如果我在数据库中的两个不同表上有一个 rowversion,它们是否保证在两个表中都是唯一的?如果没有,有没有办法设置这种行为?
我有一个将两个表连接在一起的视图,我想知道是否可以保证这种行为,以便我可以从任一表中获取最大的行号,以形成视图的行版本。
根据此链接,它“应该”在数据库中的所有表中都是唯一的。
这是“应该”部分 - 文档中有一个警告:
可以使用 SELECT INTO 语句生成重复的 rowversion 值,其中 rowversion 列在 SELECT 列表中。我们不建议以这种方式使用 rowversion。
以下是链接中信息的摘要:
每个数据库都有一个计数器,该计数器随着在数据库中包含 rowversion 列的表上执行的每个插入或更新操作而递增。该计数器是数据库行版本。这会跟踪数据库中的相对时间,而不是可以与时钟关联的实际时间。一张表只能有一个 rowversion 列。每次修改或插入具有 rowversion 列的行时,都会将递增的数据库 rowversion 值插入到 rowversion 列中。
归档时间: |
|
查看次数: |
1399 次 |
最近记录: |