所以我想我已经知道了这个问题的答案......
在mssql server 2008上运行AdventureWorks2008(最新版本)。我认为很多表中的rowguid列是为了确保有一个主键。我可能错了,因为该列似乎是一个约束。
如果我错了,请纠正我,并请用我可以学习的答案纠正我。我刚刚在SQL Management Studio中对此进行了调查...是否有任何疑问可以支持我的错误?我不是DBA所以我迷路了:))
答案 0 :(得分:2)
通常,rowguid列用于复制,如果您开始使用复制,则将创建rowguid列。从图书在线
合并复制需要每个 发布的表有一个ROWGUID列。 如果不存在ROWGUID列 快照代理之前的表 创建初始快照文件, 代理必须首先添加和填充 ROWGUID列。获得一个 生成时的性能优势 并在合并期间应用快照 复制,创建ROWGUID列 在合并期间发布的每个表上 复制。创建列时, 指定:
列标题为ROWGUID。
数据类型为UNIQUEIDENTIFIER。
默认为NEWID()。
ROWGUIDCOL属性。
列上的索引。 ROWGUID 列经常用于关联 在跟踪期间合并跟踪数据 和同步的变化 发布者和订阅者。