Wartości DateTime powinny być wstawiane tak, jakby były ciągami ujętymi w pojedyncze cudzysłowy:
'20100301'
SQL Server pozwala na wiele akceptowanych formatów dat i powinno być tak, że większość bibliotek programistycznych udostępnia szereg klas lub funkcji do prawidłowego wstawiania wartości daty i godziny. Jeśli jednak robisz to ręcznie, ważne jest, aby rozróżnić format daty za pomocą DateFormat
i użyć uogólnionego formatu:
Set DateFormat MDY --indicates the general format is Month Day Year
Insert Table( DateTImeCol )
Values( '2011-03-12' )
Ustawiając format daty, SQL Server zakłada teraz, że mój format to YYYY-MM-DD
zamiast YYYY-DD-MM
.
SQL Server rozpoznaje również ogólny format, który jest zawsze interpretowany w ten sam sposób:YYYYMMDD
np. 20110312
.
Jeśli pytasz, jak wstawić aktualną datę i godzinę za pomocą T-SQL, polecam użycie słowa kluczowego CURRENT_TIMESTAMP
. Na przykład:
Insert Table( DateTimeCol )
Values( CURRENT_TIMESTAMP )