Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
此同步参数允许应用程序提供附加参数,这些附加参数不能用任何其它的预定义参数指定。在此参数字段中,可以指定一些很少使用的参数。
这些附加参数以字符串的形式提供,字符串是由分号分隔的 "关键字=值" 设置值。
根据所使用的 API 不同,语法会有所变化。该语法在 UltraLiteJ 中不可用。
以下属性可以被指定为附加参数设置的一部分:
AllowDownloadDupRows
当同步遇到带重复主键的下载行时防止错误发生。
将此属性设置为 0 以产生错误并回退下载;否则,设置为 1 以产生警告并继续下载。
此属性仅在 UltraLite C/C++ 中可用。
CheckpointStore
添加数据库在同步过程中的额外检查点,以限制数据库在同步过程中的增长。
将此属性设置为 1 以启用此功能,这对具有许多更新的大量下载有益,但会降低同步速度;否则,将其设置为 0(这是缺省值)。
DisableConcurrency
在上载阶段的同步期间禁止从其它线程访问数据库。
将此属性设置为 0 以允许并发数据库访问;否则,将其设置为 1。缺省情况下,此属性被设置为 0。
TableOrder
如果 UltraLite 的缺省表排序不适合部署,则设置进行优先级同步所需的表顺序。
将此属性设置为表名列表,表名以所需顺序排列以便上载。对于 UltraLite,使用以逗号分隔的列表;对于 ulsync,使用以分号分隔的列表。缺省情况下,顺序基于外键关系。通常,当统一数据库中的外键与 UltraLite 远程数据库匹配且不存在外键循环时,可以接受缺省值。
使用单引号或双引号引用表名称。例如,UltraLite 支持 "Customer,Sales" 和 'Customer,Sales'。
如果所包含的表未包括在同步中,则会忽略这些表。对没有列出的任何表均根据远程数据库中定义的外键进行适当排序。
下载时表的顺序与为上载定义的顺序相同。
如果 UltraLite 表出现以下情况,则只需要显式设置表顺序:
UltraLite 表是外键循环的组成部分。此时必须列出作为循环组成部分的所有表。
在统一数据库中有不同的外键关系。
UltraLite for C/C++ 应用程序可以按如下方法设置附加参数:
ul_sync_info info; // ... info.additional_parms = UL_TEXT( "AllowDownloadDupRows=1; CheckpointStore=1; DisableConcurrency=1; TableOrder=Customer,Sales" );