Oracle是否具有与SQL ServerRowVersion
类似的数据类型?
插入或更新行时,相应的"版本"列(类型RowVersion
)会自动更新.
MSDN说关于RowVersion:
是一种在数据库中公开自动生成的唯一二进制数的数据类型.rowversion通常用作版本标记表行的机制.存储大小为8个字节.rowversion数据类型只是一个递增的数字,不保留日期或时间.
每个数据库都有一个计数器,该计数器针对在数据库中包含rowversion列的表上执行的每个插入或更新操作递增.此计数器是数据库rowversion.这会跟踪数据库中的相对时间,而不是可以与时钟关联的实际时间.一个表只能有一个rowversion列.每次修改或插入具有rowversion列的行时,都会在rowversion列中插入递增的数据库rowversion值.
您可以使用行的rowversion列轻松确定自上次读取行以来该行中的任何值是否已更改.如果对该行进行了任何更改,则会更新rowversion值.如果没有对该行进行任何更改,则rowversion值与先前读取的值相同.
您可以向表中添加rowversion列,以便在多个用户同时更新行时帮助维护数据库的完整性.您可能还想知道在不重新查询表的情况下更新了多少行和哪些行.
我们正在使用oracle设计数据模型,并希望使用Version列来管理并发.
我还想知道Oracle世界中是否有更好的方法.