加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sqlserver2000 的timestamp原来可以转成bigint型

发布时间:2020-12-12 15:14:27 所属栏目:MsSql教程 来源:网络整理
导读:为了实现对数据库变化的监控想到了可以用一下sqlserver 的timestamp类型,大致的知道一些用法,没想到使用起来却是一筹莫展。 sqlserver帮助文档中说: timestamp 用于表示SQL Server在一行上的活动顺序,按二进制格式以递增的数字来表示。当表中的行发生变

为了实现对数据库变化的监控想到了可以用一下sqlserver 的timestamp类型,大致的知道一些用法,没想到使用起来却是一筹莫展。

sqlserver帮助文档中说:

timestamp

用于表示SQL Server在一行上的活动顺序,按二进制格式以递增的数字来表示。当表中的行发生变动时,用从@@DBTS函数获得的当前数据库的时间戳值来更新时间戳。timestamp数据与插入或修改数据的日期和时间无关。若要自动记录表中数据更改的时间,使用 datetimesmalldatetime 数据类型记录事件或触发器。

说明 在SQL Server中rowversion是timestamp的同义词。

?

faint!原本以为timestamp能用adoquery的AsSQLTimeStamp或AsDateTime获得结果是编译通过但运行报数据类型错误。

最后发现可以将其转换成bigint型,转换完了一看更晕了,原来时间戳就是一个自增的整数。

?

sql语句:

select cast(@@dbts as bigint) as tt from tabelnm

?

然后就可以将其作为整数处理了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读