指点成金-最美分享吧

登录

unidac使用教程 批处理操作

admin 举报

unidac使用教程 批处理操作

自动数据更新

数据更新的扩展设置

缓存更新

默认值/表达式

自动增量值生成

及时获取最新数据

自动数据更新

、和是允许检索和编辑数据的组件。若要编辑每个组件的数据,请在属性中指定键字段名称。如果它是空字符串、和所有基于ODBC的提供程序都将尝试从发送附加查询的服务器请求有关主键的信息,这可能会对性能产生负面影响。服务器发送的元数据和数据将被SQLServer和MySQL提供者使用。SQLServer提供程序具有UniqueRecords选项,该选项允许在查询中省略主键字段时,自动从表中请求主键字段。

如果要打开的数据集没有唯一标识该记录的字段,可以通过使用Oracle、Firebird2.0、PostgreSQL和SQLite服务器作为服务器来解决这个问题。对于Oracle和SQLite服务器,您应该将RowID列添加到查询中。带Firebird2.0-DB_KEY。如果您的表是使用OID创建的,您可以使用PostgreSQL服务器OID列作为键字段。

unidac使用教程 批处理操作

数据更新的扩展设置

对于包含来自多个表的数据的数据集,默认情况下只有一个表是可更新的。您应该在UpdatingTable属性中指定要更新的表的名称,否则属于字段列表中第一个字段的表将是可更新的。如果设置字段只读选项设置为真,自动生成的更新语句中未使用的字段将默认标记为只读。对于使用多个表、同义词、数据库链接和聚合字段的复杂查询,我们建议使用Oracle、PostgreSQL和所有基于ODBC的提供程序来启用ExtendedFieldsInfo选项。

如果插入/发布、更新或刷新操作影响多条记录,UniDAC将引发异常。为了抑制这种异常,应该将“严格更新”选项设置为“假”。

可以填写Update-SQL语句,更灵活地控制数据修改。它们由SqL插入、SqL日期、SqL删除和SqL刷新属性表示,并在插入/发布、编辑/发布、删除和刷新操作中自动执行。在设计时,可以在组件编辑器的SQLGenerator选项卡上生成默认的更新SQL语句。您可以根据需要修改生成的语句。但是,如果您为每条记录动态生成更新查询,则只有更改的值会发送到服务器。

这个功能对于某些特定情况是不够的。它可以通过TUniUpdateSQL组件进行扩展。TUniUpdateSQL允许单独的Tunis QL/tuniquery/tunisteredproc组件与每个更新操作相关联。

缓存更新

UniDAC允许在客户端缓存所谓的“CashedUpdates”,然后批量发布所有更新。这意味着在调用“发布”或“删除”后,更改不会立即反映在服务器上。调用ApplyUpdates方法后,所有缓存的更改都将发布到服务器。UpdateBatchSize选项允许您设置要同时发布的更改数量。

默认值/表达式

如果已经为数据库表中的列定义了默认值或表达式,您可以设置UniDAC,以便它从服务器请求这些表达式。表达式被分配给TField对象的DefaultExpression属性。如果填充了默认表达式值,它们将被替换。此行为由默认禁用的默认选项控制。

自动增量值生成

编辑数据集时,通常不方便手动填写关键字段值并自动生成。有三种方法可以做到这一点。

第一种方法最有用的方法是使用服务器方法自动生成关键字段值。

SQLServer、MySQL和SQLite允许在表中定义自动增量列。这不需要在客户机上进行额外的处理。需要为SAPSybaseASE、Oracle、PostgreSQL和Interbase提供程序指定特定于keysequenceInterbase的密钥生成器选项。自动生成的值会自动反映在数据集中。

第二种方法是在BeforePost事件处理程序中生成并填充关键字字段值。通常,此方法需要执行查询来从服务器检索一些信息。因此,这种方法可能只在某些特定情况下有用。

第三种方法是创建一个AFTERINSERT触发器,用适当的值填充字段。但是,返回触发器生成的值时出现问题。虽然这个问题可以解决,见下一段,这个方法被认为是非最优的。所以如果可能的话尽量选择别的方法。

但是,您可以使用特定于QueryIdentity的选项来禁用对SQLServer提供程序生成的值的检索。这将提高记录插入的性能。

及时获取最新数据

在某些情况下,UniDAC允许自动刷新数据集中的记录,以保持它们的值是最新的。

使用刷新选项,您可以在编辑之前、插入或删除之后,使UniDAC刷新当前记录。这是通过执行额外的查询来完成的。

“刷新”选项允许在插入或更新后刷新当前记录,这与“刷新选项”类似,但工作方式不同。这允许比刷新选项更高的性能。基于MySQL、SQLite、ODBC的提供者不支持DMLRefresh。

如果要控制插入或更新后当前记录的哪些字段需要刷新,应该执行以下操作:在更新查询中定义与数据集中的字段名对应的名称的输出参数,并将ReturnParams选项设置为

真的.执行更新查询后,数据集读取输出参数的值,并将其放入具有相应名称的字段中。

相关阅读

  • 数据库连接池实现 hikaricp数据库连接池
  • unidac使用教程 批处理操作
  • unidac UniDAC破解版下载
  • unidac 0 1〖D7 2007 10 1 10 2 10 3〗一键安装版已XX版
  • unidac最新动态
  • 马来西亚人种 马来西亚韩国最新邪恶动态大全图片大全人
  • unidac最新动态
  • unidac使用教程 批处理操作
  • 标签: #unidac最新动态