SQL Server – Timestamp Column Writer #1, 2016-05-02 While this seems like a simple thing to do, I recently discovered so many ways not to do it (also known as failing) that I just had to document this one. While this seems like a simple thing to do, I recently discovered so many ways not to do it (also known as failing) that I just had to document this one. It is very common to want a column of your SQL table to be a timestamp of when the row was written. At times like these, it's nice to know that there is a "Timestamp" datatype… that does not help at all. So, how do you do it? Solution: "datetime" Datatype The data type must be "datetime" and the Default Value or Binding must be "getdate()". When I filled in the Default Value or Binding, I used "CURRENT_TIMESTAMP", which was automatically updated to "getdate()", as seen below. Timestamp Datatype So what about the "timestamp" datatype? Microsoft states: The Transact-SQL timestamp data type is not the same as the timestamp data type defined in the SQL-92 standard. The SQL-92 timestamp data type is equivalent to the Transact-SQL datetime data type. In other words, in SQL Server, if you want a timestamp, don't use "timestamp", use "datetime". If you use the "timestamp" datatype, you'll see data like this in your table: SQL Server columnsql servertimestamp