In SQL server, the timestamp
data type has nothing to do with date and time. It's a very unfortunate name for a binary(8)
column with the special property that it is automatically updated with a database-wide monotonically increasing value. An alternative name for this data type is rowversion
. You cannot enter any data yourself in such a column.
In other products, timestamp
is indeed a data type for date and time; in fact that is even the ANSI standard. Typically, you can't enter a space into such a column, since space does not belong to the domain of dates. Exactly what happens, depends on the product. In SQL Server, if you enter a space into a date/time column, you will in fact get the value 1900-01-01 00:00:00.000.
If you don't want to enter a date, for instance, because the date is not known, you would typically leave it NULL.