datetime和timestamp之间有什么区别

时间:2010-12-16 11:19:15

标签: sql-server-2005

Sql Server中的datetime和timestamp数据类型有什么区别?

4 个答案:

答案 0 :(得分:38)

一个是日期和时间,另一个是每次更新行时都会更新的列类型。

[注意时间戳已被弃用;使用rowversion代替]

答案 1 :(得分:8)

时间戳(不推荐使用rowversion的同义词):

  

是一种在数据库中公开自动生成的唯一二进制数的数据类型。 rowversion通常用作版本标记表行的机制。存储大小为8个字节。 rowversion数据类型只是一个递增的数字,不保留日期或时间。要记录日期或时间,请使用datetime2数据类型。

http://msdn.microsoft.com/en-us/library/ms182776.aspx

答案 2 :(得分:-1)

通常在将新记录自动插入数据库系统时使用的时间戳将采用默认日期时间    例如:银行存款或抽奖等交易

在将用户定义的日期插入记录的过程中使用的data-time数据类型     例如:出生日期

答案 3 :(得分:-2)

时间戳 rowversion 数据类型的同义词,并受数据类型同义词的行为影响。在DDL语句中,尽可能使用 rowversion 而不是时间戳。以简单的方式告诉,它意味着行的更新时间。 datetime 表示创建行的时间。 DateTime是常量,其他可以更改为实时和本地时间。