Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » MobiLink - 服务器管理 » 使用 MobiLink 服务器技术 » 同步技术 » 维护唯一主键

 

使用全局自动增量

在 SQL Anywhere 和 UltraLite 数据库中,可以将缺省列值设置为 GLOBAL AUTOINCREMENT。您可以对要在其中保持唯一值的任何列使用此缺省值,但它对主键特别有用。

全局自动增量值在远程数据库间分区,形成连续的值范围。可能值的集是有限的,每个范围越大,留下的可用范围就越小。必须谨慎设置所需范围的正确大小。范围可能会用完,但您可以检测到此现象并指派一个新值。请参见如何选择缺省值

 ♦  使用全局自动增量列
  1. 将该列声明为全局自动增量列。

    如果您指定了缺省全局自动增量,则将对该列的值域进行分区。每个分区都包含相同数目的值。例如,如果将数据库中一个整数列的分区大小设置为 1000,则一个分区的范围是从 1001 到 2000,下一个分区从 2001 到 3000,依此类推。

    请参见声明缺省全局自动增量

  2. 设置 global_database_id 值。

    SQL Anywhere 和 UltraLite 数据库只从用数据库编号唯一标识的分区中提供数据库中的缺省值。例如,如果指定数据库的标识号为 10,分区大小为 1000,则将在 10001-11000 范围内选择该数据库的缺省值。标识号指派为 11 的另一个数据库副本,将在 11001-12000 范围内为同一列提供缺省值。

    请参见设置全局数据库 ID


声明缺省全局自动增量
设置全局数据库 ID