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

tsql – T-SQL“timestamp”覆盖“rowversion”数据类型列

发布时间:2020-12-12 07:45:59 所属栏目:MsSql教程 来源:网络整理
导读:我正在使用Miscrosoft SQL Server 2012,因为在这 article中说: The timestamp syntax is deprecated. This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work,and plan to modify ap
我正在使用Miscrosoft SQL Server 2012,因为在这 article中说:

The timestamp syntax is deprecated. This feature will be removed in a
future version of Microsoft SQL Server. Avoid using this feature in
new development work,and plan to modify applications that currently
use this feature.

我决定使用“rowversion”列而不是“timestamp”列.所以,我创建了下表:

CREATE TABLE [dbo].[TestTable]
(
     [Col001] [INT] NOT NULL,[Col002] [CHAR](2) NOT NULL
     ...,[Col00N]  [DATETIME2] NOT NULL,[RowVersionID] [ROWVERSION] NOT NULL,CONSTRAINT [PK_ProtoSurveyGlobalizationChanges_RowVersionID] PRIMARY KEY CLUSTERED 
     (
        [RowVersionID] ASC
     )WITH (PAD_INDEX = OFF,STATISTICS_NORECOMPUTE = OFF,IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON,ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY]

一切都看起来很好,直到我按下“ALT F1”组合,给我关于我的表的信息(如列详细信息),我看到“RowVersionID”列标记为“timestamp”类型.

接下来认为我已经完成了,使用SQL Server Management Studio 2012“删除并创建我的表”,“生成的SQL”更改了我的原始查询,如下所示:

[RowVersionID] [timestamp] NOT NULL

为什么服务器没有使用我最初设置的类型,为什么在文章中我建议不要使用“timestamp”,但不知何故服务器正在选择它?

解决方法

它们是同义词,服务器无法告诉(一旦创建表格)您实际用于创建表格的单词.

显然,在深度深处,时间戳被弃用的消息还没有达到负责编写SQL Server脚本组件的人 – 所以脚本仍然说时间戳.

(编辑:李大同)

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

    推荐文章
      热点阅读