Sql表默认值

时间:2014-03-03 18:25:54

标签: sql sql-server-2008 default-value

大家好,我有一个我正在研究的项目,包括在3个不同的位置保持相同的表

我将每个位置不存在的数据提取到公司表中,然后我需要将新数据发送回位置,以便它们都是相同的

我要拉的桌子是一个身份

我的问题是在Sql中是否有任何方法可以使表成为一个身份而不会使其成为身份,因为将默认值设置为max(id)+1,这是我能想到的唯一方法数据结构相同而无需复制

1 个答案:

答案 0 :(得分:0)

问题是您在多个来源的IDENTITY字段中生成记录,然后无法将这些记录合并而不会为这些记录分配新的IDENTITY值。

通过使用GUID作为关键字段,3个数据库中的每个数据库都可以创建具有唯一ID的记录,然后您就可以毫无问题地将它们组合在一起。您仍然可以对该字段设置UNIQUE约束,但生成相同GUID的可能性在天文数字上很小。

大多数复制过程已经在某种程度上使用了这种GUID方法,因此这是解决这个问题的常用方法。