sqlserver中datetime和timestamp的区别?

时间:2011-08-18 09:19:53

标签: sql sql-server date time

TimestampDatetime SQL Server有什么区别?

我认为这两种格式都能存储日期+时间。然后,它们之间存在差异?

Timestamp无法存储日期和时间信息。

还有什么区别?

2 个答案:

答案 0 :(得分:101)

根据the documentationtimestamprowversion的同义词 - 它是自动生成的,保证 1 是唯一的。 datetime不是 - 它只是一个处理日期和时间的数据类型,可以在插入等上进行客户端指定。


1 当然,假设您正确使用它。见评论。

答案 1 :(得分:14)

Datetime是一种数据类型。

时间戳是一种行版本控制方法。实际上,在sql server 2008中,此列类型已重命名(即不推荐使用时间戳)到rowversion。它基本上意味着每次更改行时,此值都会增加。这是通过数据库计数器完成的,该计数器会针对每个插入或更新的行自动增加。

了解更多信息:

http://www.sqlteam.com/article/timestamps-vs-datetime-data-types

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