What is the difference between Timestamp and Datetime SQL Server?
I thought Both formats are capable of storing date + time. Then, Where the difference is lying between them?
But Timestamp is not capable of storing date, time information.
Still Whats the difference?
2 Answers
According to the documentation, timestamp is a synonym for rowversion - it's automatically generated and guaranteed1 to be unique. datetime isn't - it's just a data type which handles dates and times, and can be client-specified on insert etc.
1 Assuming you use it properly, of course. See comments.
Datetime is a datatype.
Timestamp is a method for row versioning. In fact, in sql server 2008 this column type was renamed (i.e. timestamp is deprecated) to rowversion. It basically means that every time a row is changed, this value is increased. This is done with a database counter which automatically increase for every inserted or updated row.
For more information: