【发布时间】:2012-11-20 20:59:08
【问题描述】:
来自msdn
每个数据库都有一个计数器,每次插入或 对包含 的表执行的更新操作 数据库中的 rowversion 列。
还有
要返回数据库的当前行版本值,请使用@@DBTS。
我有一个数据库(相信我它只有一个表,没有时间戳/行版本字段)
但是当我运行 select @@DBTS 时,我得到的结果是 如果我有一个 rowversion 列:
(p.s. - 插入/更新 - 不更新此值)。
这个值是多少?
为什么我没有 rowversion 列?
【问题讨论】:
-
它不会更新,因为数据库中没有时间戳字段会影响上次使用的时间戳。如果您添加时间戳值进行跟踪,不确定它的初始值可能只是开始?
-
@matthewnreid 我知道,在我写作的时候,我从来没有这样的专栏。尝试在你的数据库中运行这个命令(你知道它从来没有这个专栏)
-
完全相同的值 0x00000000000007D0。想知道它是否是一种不存在而不是零的指标。
-
也许是主表? ,但定义仍然是在数据库中包含 rowversion 列的表上。
-
msdn.microsoft.com/en-us/library/ms182776.aspx 这似乎在示例 7D3 中使用了一个非常相似的值作为增量。如果您选择添加 rowversion 列,我会假设它出于某种原因需要初始值,但我没有找到明确的答案。这很有趣。
标签: sql-server sql-server-2008 rowversion