此语句用于创建或替换 UltraLite 或 UltraLiteJ 同步配置文件。同步配置文件定义 UltraLite 数据库如何与 MobiLink 服务器同步。
CREATE [OR REPLACE] SYNCHRONIZATION PROFILEsync-profile-name sync-option [;...]
sync-option :
sync-option-name = sync-option-value
sync-option-name : string
sync-option-value : string
OR REPLACE 子句 如果命名的同步配置文件已存在,则会进行替换。如果该配置文件不存在,则会进行创建。
sync-profile-name 同步配置文件的名称。
sync-option
一个或多个同步选项值对的字符串用分号分隔。例如,'option1=value1;option2=value2'
。
sync-option-name 同步配置文件选项的名称。
sync-option-value 同步配置文件选项的值。
有两种方法可用于更改现有同步配置文件。第一种是使用 REPLACE 子句。这会将同步配置文件的内容替换为在新 sync-option 字符串中所包含的内容。这相当于删除同步配置文件然后创建一个具有相同名称但使用新字符串的同步配置文件。因此,请注意,同步配置文件无需包含完整的同步定义因为在同步时可以合并(或替换)参数。
第二种修改同步配置文件的方法是使用 MERGE 子句。使用此子句时,仅更改在 MERGE 子句中指定的同步选项。要从同步配置文件中删除同步选项,sync-option 字符串应与 'option1=;'
类似(为了将该选项设置为空值)。
STREAM 同步配置文件选项与其它选项不同,因为它的值包含 sub-list。例如:'STREAM=TCPIP{host=192.168.1.1;port=1234}'
。这种情况下 'host=192.168.1.1;port=1234'
是 sub-list。添加或删除 sub-list 值,请使用在 STREAM sync-option-name 和 sub-option-name 之间的句点。例如,MERGE 'stream.port=5678;stream.host=;compression=zlib'
生成了如下同步配置文件:stream=TCPIP{port=5678;compression=zlib}
。尝试将此流设置为新值将替换整个流的值。例如:MERGE 'stream=HTTPS'
生成了如下同步配置文件:stream=HTTPS{}。
下表列出了 UltraLite 和 UltraLiteJ 所支持的同步配置文件选项。
同步配置文件选项 | 有效值 | 说明 |
---|---|---|
AllowDownloadDupRows(仅适用于 UltraLite) | 布尔值 | 下载具有相同主键的多行时,本选项可防止错误的出现。此选项可用于同步不一致的数据,而不会导致同步失败。缺省值为 "no"。请参见Additional Parameters 同步参数。 |
AuthParms(适用于 UltraLite 和 UltraLiteJ) | 字符串(以逗号分隔) | 指定验证参数列表发送到 MobiLink 服务器。可使用验证参数在 MobiLink 脚本中执行自定义验证。请参见Authentication Parameters 同步参数。 |
CheckpointStore(仅适用于 UltraLite) | 布尔值 | 添加数据库在同步过程中的额外检查点,以限制数据库在同步过程中的增长。请参见Additional Parameters 同步参数。 |
ContinueDownload(仅适用于 UltraLite) | 布尔值 | 重新启动以前执行失败的下载。继续下载时,仅能接收到在同步失败时所选择要下载的更改。缺省情况下,UltraLite 不继续下载。请参见恢复失败的下载。 |
DisableConcurrency(仅适用于 UltraLite) | 布尔值 | 在同步期间禁止从其它线程访问数据库。请参见Additional Parameters 同步参数。 |
DownloadOnly(适用于 UltraLite 和 UltraLiteJ) | 布尔值 | 执行仅下载同步。请参见Download Only 同步参数。 |
KeepPartialDownload(仅适用于 UltraLite) | 布尔值 | 如果发生通信错误,此选项控制 UltraLite 是否保持部分下载。缺省情况下,UltraLite 不回退部分下载的更改。请参见Keep Partial Download 同步参数。 |
MobiLinkPwd(适用于 UltraLite 和 UltraLiteJ) | 字符串 | 指定与用户名关联的现有 MobiLink 口令。请参见MobiLinkPwd (mp) 扩展选项。 |
MobiLinkUid(适用于 UltraLite 和 UltraLiteJ) | 字符串 | 指定 MobiLink 用户名。请参见-u dbmlsync 选项(不建议使用)。请参见-mn dbmlsync 选项。 |
NewMobiLinkPwd(适用于 UltraLite 和 UltraLiteJ) | 字符串 | 为 MobiLink 用户提供新口令。在想要更改现有口令时,可使用此选项。请参见-mn dbmlsync 选项。 |
Ping(适用于 UltraLite 和 UltraLiteJ) | 布尔值 | 仅确认与服务器的通信,未执行同步。请参见Ping 同步参数。 |
Publications(适用于 UltraLite 和 UltraLiteJ) | 字符串(以逗号分隔) | 指定要同步的发布。发布可确定远程数据库上包含在同步操作中的表。如果此参数为空白(缺省值),则所有表都是同步的。如果此参数为星号 (*),则所有发布都是同步的。请参见UltraLite 中的发布。 |
ScriptVersion(适用于 UltraLite 和 UltraLiteJ) | 字符串 | 指定 MobiLink 脚本版本。脚本版本确定在同步期间 MobiLink 在统一数据库上运行的脚本。如果未指定脚本版本,则使用 "缺省值"。请参见ScriptVersion (sv) 扩展选项。 |
SendColumnNames(适用于 UltraLite 和 UltraLiteJ) | 字符串 | 同步时应指定将列名作为上载文件的一部分发送到 MobiLink 服务器。缺省情况下,不发送列名。请参见Send Column Names 同步参数。 |
SendDownloadACK(适用于 UltraLite 和 UltraLiteJ) | 布尔值 | 指定客户端应该向服务器发送一个下载确认。缺省情况下,MobiLink 服务器不提供下载确认。请参见发送下载确认同步参数。 |
Stream(适用于 UltraLite 和 UltraLiteJ) | 字符串(带有 sub-list) | 指定 MobiLink 网络同步协议。请参见Stream Type 同步参数。 |
TableOrder(适用于 UltraLite 和 UltraLiteJ) | 字符串(以逗号分隔) | 指定上载中的表顺序。缺省情况下,UltraLite 和 UltraLiteJ 选择基于外键关系的顺序。请参见Additional Parameters 同步参数。 |
UploadOnly(适用于 UltraLite 和 UltraLiteJ) | 字符串 | 指定同步仅包含上载,不进行任何下载。请参见Upload Only 同步参数。 |
布尔值可被指定为 Yes/No、1/0、True/False、On/Off。在所有的布尔实例中,缺省值为 "No"。对于所有其它值,完全未指定缺省值。
无。
以下创建的同步配置文件名为 Test1。
CREATE SYNCHRONIZATION PROFILE Test1 'MobiLinkUid=mary;Stream=TCPIP{host=192.168.1.1;port=1234}' |
以下示例说明了在使用不同的选项执行 ALTER SYNCHRONIZATION PROFILE 命令序列后所发生的变化。
假设 myProfile1='MobiLinkUID=mary;ScriptVersion=default'
。
执行 ALTER SYNCHRONIZATION PROFILE myProfile1 REPLACE 'MobiLinkPwd=sql;ScriptVersion=1'
后,myProfile1 为 'MobiLinkPwd=sql;ScriptVersion=1'
。
执行 ALTER SYNCHRONIZATION PROFILE myProfile1 MERGE 'MobiLinkUID=mary;STREAM=tcpip'
后,myProfile1 为 'MobiLinkPwd=sql;ScriptVersion=1;MobiLinkUID=mary;STREAM=tcpip'
。
执行 ALTER SYNCHRONIZATION PROFILE myProfile1 MERGE 'MobiLinkUID=;STREAM.host=192.168.1.1;STREAM.port=1234;ScriptVersion=;'
后,myProfile1 为 'MobiLinkPwd=sql;STREAM=tcpip{192.168.1.1;port=1234}'
。
执行 ALTER SYNCHRONIZATION PROFILE myProfile1 MERGE 'MobiLinkPwd=;Ping=yes;STREAM =HTTP'
后,myProfile1 为 'Ping=yes;STREAM=HTTP'
。
执行 ALTER SYNCHRONIZATION PROFILE myProfile1 MERGE 'STREAM=HTTP{host=192.168.1.1}'
后,myProfile1 为 'Ping=yes;STREAM=HTTP{host=192.168.1.1}'
。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |