یکی از مواردی که خیلی از طرف توسعه دهندگان مورد نیاز بود این بود که نوع DateTime در نسخه های قبل به صورت دو نوع مجزا در نسخه جدید آورده شودکه اینگونه هم شد. در نسخه جدید 4 نوع جدید برای این کار در نظر گرفته شده است که عبارتند از Date ، Time، DateTime2 و DATETIMEOFFSET
در جدول زیر مشخصات این انواع جدید آورده شده است:
|
نوع داده |
ذخیره سازی (bytes) |
دامنه تاریخ |
دقت |
فرمت پیشنهادی تارخ و مثال |
|
DATE |
3 |
January 1, 0001, through December 31, 9999 (Gregorian calendar) |
1 day |
'YYYY-MM-DD' |
|
TIME |
3 to 5 |
|
100 nanoseconds |
'hh:mm:ss.nnnnnnn' |
|
DATETIME2 |
6 to 8 |
January 1, 0001, through December 31, 9999 |
100 nanoseconds |
'YYYY-MM-DD hh:mm:ss.nnnnnnn' |
|
DATETIMEOFFSET |
8 to 10 |
January 1, 0001, through December 31, 9999 |
100 nanoseconds |
'YYYY-MM-DD hh:mm:ss.nnnnnnn [+|-]hh:mm' |
به مثال زیر نیز توجه کنید :
DECLARE
@d AS DATE = '2009-02-12',
@t AS TIME = '12:30:15.1234567',
@dt2 AS DATETIME2 = '2009-02-12 12:30:15.1234567',
@dto AS DATETIMEOFFSET = '2009-02-12 12:30:15.1234567 +02:00';
SELECT @d AS [@d], @t AS [@t], @dt2 AS [@dt2], @dto AS [@dto];
این انواع جدید در ODBC و ADO.NET و OLE DB هم حمایت شده است جدول زیر معادل هر نوع را در Visual Studio 2008 نمایش میدهد :
|
SQL |
ODBC |
OLE DB |
ADO.NET |
|
DATE |
SQL_TYPE_DATE/ |
DBTYPE_DBDATE |
DateTime |
|
TIME |
SQL_TIME/ |
DBTYPE_DBTIME/ |
TimeSpan |
|
DATETIMEOFFSET |
SQL_SS_TIMESTAMPOFFSET |
DBTYPE_DBTIMESTAMPOFFSET |
DateTimeOffset |
|
DATETIME2 |
SQL_TYPE_TIMESTAMP SQL_TIMESTAMP |
DBTYPE_DBTIMESTAMP |
DateTime |


پیوند ها