В чем разница между Timestamp и Datetime SQL Server?
Я думал, что оба формата способны хранить дату + время. Тогда, где разница между ними?
Но Timestamp не может хранить информацию о дате, времени.
Какая разница?
Ответ 1
Согласно документации, timestamp является синонимом rowversion - он автоматически генерирует и гарантирует 1 уникальность. datetime не является - это просто тип данных, который обрабатывает даты и время и может быть указан клиентом на вставке и т.д.
1 Предполагая, что вы используете его правильно, конечно. См. Комментарии.
Ответ 2
Datetime - тип данных.
Timestamp - это метод для управления версиями строк. Фактически, в sql server 2008 этот тип столбца был переименован (т.е. Timestamp устарел) в rowversion. Это в основном означает, что каждый раз, когда изменяется строка, это значение увеличивается. Это делается с помощью счетчика базы данных, который автоматически увеличивается для каждой вставленной или обновленной строки.