Стойностите DateTime трябва да се вмъкват така, сякаш са низове, оградени с единични кавички:
'20100301'
SQL Server позволява много приети формати за дата и би трябвало да е така, че повечето библиотеки за разработка предоставят поредица от класове или функции за правилно вмъкване на стойности за дата и час. Ако обаче го правите ръчно, важно е да разграничите формата на датата с помощта на DateFormat
и да използвате обобщен формат:
Set DateFormat MDY --indicates the general format is Month Day Year
Insert Table( DateTImeCol )
Values( '2011-03-12' )
Като зададе формата на датата, SQL Server вече приема, че моят формат е YYYY-MM-DD
вместо YYYY-DD-MM
.
SQL Server също разпознава общ формат, който винаги се интерпретира по един и същи начин:YYYYMMDD
напр. 20110312
.
Ако питате как да вмъкнете текущата дата и час с помощта на T-SQL, тогава бих препоръчал да използвате ключовата дума CURRENT_TIMESTAMP
. Например:
Insert Table( DateTimeCol )
Values( CURRENT_TIMESTAMP )