• 售前

  • 售后

热门帖子
入门百科

Sqlserver timestamp数据类使用介绍

[复制链接]
卡扎菲遇本拉遇h 显示全部楼层 发表于 2021-10-26 13:05:01 |阅读模式 打印 上一主题 下一主题
在SQL Server中联机丛书是如许说的:
SQL Server timestamp 数据范例与时间和日期无关。SQL Server timestamp 是二进制数字,它表明数据库中数据修改发生的相对次序。实现 timestamp 数据范例最初是为了支持 SQL Server 规复算法。每次修改页时,都会使用当前的 @@DBTS 值对其做一次标记,然后 @@DBTS 加1。如许做足以资助规复过程确定页修改的相对次序,但是 timestamp 值与时间没有任何关系。
我用口水话表明一下便于理解:
我们知道数字范例有个“标识”属性,设置好“标识种子”、“标识递增量”,每增加一条记载时,这个字段的值就会在近来的一个标识值基础上主动增加,如许我们可以知道哪些记载是先添加的,哪些记载是后添加的,但是我们无法知道哪些记载修改过。timestamp这个范例的字段呢,每增加一条记载时,它会在近来的一个时间戳基础上主动增加,当修改某条记载时,它也会在近来的一个时间戳基础上主动增加,以是我们就知道哪些记载修改过了。

timestamp 这种数据范例表现主动天生的二进制数,确保这些数在数据库中是唯一的。timestamp 一样平常用作给表行加版本戳的机制。存储巨细为 8 字节。
表明
Transact-SQL timestamp 数据范例与在 SQL-92 尺度中定义的 timestamp 数据范例差别。SQL-92 timestamp 数据范例等价于 Transact-SQL datetime 数据范例。
Microsoft® SQL Server™ 未来的版本可能会修改 Transact-SQL timestamp 数据范例的行为,使它与在尺度中定义的行为一致。到那时,当前的 timestamp 数据范例将用 rowversion 数据范例替换。
Microsoft® SQL Server™ 2000 引入了 timestamp 数据范例的 rowversion 同义词。在 DDL 语句中尽可能使用 rowversion 而不使用 timestamp。rowversion 受数据范例同义词行为的制约。有关更多信息,请参见数据范例同义词。
在 CREATE TABLE 或 ALTER TABLE 语句中,不必为 timestamp 数据范例提供列名:
CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, timestamp)如果没有提供列名,SQL Server 将天生 timestamp 的列名。rowversion 数据范例同义词不具有如许的行为。指定 rowversion 时必须提供列名。
一个表只能有一个 timestamp 列。每次插入或更新包含 timestamp 列的行时,timestamp 列中的值均会更新。这一属性使 timestamp 列不得当作为键使用,尤其是不能作为主键使用。对行的任何更新都会更改 timestamp 值,从而更改键值。如果该列属于主键,那么旧的键值将无效,进而引用该旧值的外键也将不再有效。如果该表在动态游标中引用,则所有更新均会更改游标中行的位置。如果该列属于索引键,则对数据行的所有更新还将导致索引更新。
不可为空的 timestamp 列在语义上等价于 binary(8) 列。可为空的 timestamp 列在语义上等价于 varbinary(8) 列。

Microsoft SQL Server 用两个 4 字节的整数内部存储 datetime 数据范例的值。第一个 4 字节存储 base date(即 1900 年 1 月 1 日)之前或之后的天数。基础日期是体系参考日期。不允许早于 1753 年 1 月 1 日的 datetime 值。别的一个 4 字节存储以半夜后毫秒数所代表的天天的时间。

复制代码 代码如下:
@@DBTS(SELECT @@DBTS)
为当前数据库返回当前 timestamp 数据范例的值。这一 timestamp 值包管在数据库中是唯一的。
语法
@@DBTS
返回范例
varbinary
表明
@@DBTS

返回当前数据库最后所使用的时间戳值。当带有 timestamp 列的一行被插入或更新时,会产生一个新的时间戳值。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作