2

我想在我的 SQL Server 数据库中的一些表上应用数据并发。为了实现行版本控制,我正在考虑添加一个integer名为 的列RowVersion,并在更新行时增加该列的行值。

还有另一种选择:使用timestamp列。当您使用timestamp列时,SQL Server 会在行更新时自动创建一个唯一值。

我想知道这些选项的优点。我认为插入int列来存储行版本是更通用的方式,而插入timestamp列是 SQL Server 特定的。

更重要integer的是,行版本的值比timestamp列更易于阅读。

我想知道integer为行版本字段选择列的其他优点或缺点。

谢谢。

4

1 回答 1

5

如果你让 SQL Server 为你做这件事,你就可以免费保证原子性。(保证在同一张表上的并发更新会产生不同的行版本。)如果您推出自己的行版本控制方案,您将不得不自己做任何事情来保证原子性。

于 2011-12-30T07:41:03.610 回答