smalldatetime (języka Transact-SQL)
Definiuje połączone z czas data .Od czas w dniu 24-godzinnym, zawsze zero sekund (: 00) i bez ułamków sekund.
Ostrzeżenie
Użycie time, date, datetime2 i datetimeoffset typy danych dla nowej pracy.Te typy wyrównać SQL Standard.Są one bardziej poręczny.time, datetime2 i datetimeoffset dostarcza więcej sekund precyzji.datetimeoffsetzapewnia obsługę strefy czas globalnie wdrożonych aplikacji.
Przegląd wszystkich Transact-SQL data i czas typów danych i funkcji, zobacz Funkcje daty i godziny (Transact-SQL).Informacje i przykłady, które są wspólne dla data i czas typów danych i funkcji, zobacz Data i czas danych.
smalldatetime opis
Składnia |
smalldatetime |
Użycie |
ZADEKLAROWAĆ @ MySmalldatetimesmalldatetime Tworzenie tabeli Tabela1 (Kolumna1 smalldatetime ) |
Domyślny ciąg literału formatów (używane dla niedziałający-poziom klient) |
Nie dotyczy |
zakresdat |
1900-01-01 poprzez 2079-06-06 1 Stycznia 1900 do 6 czerwca 2079 |
zakresczasu |
00: 00: 00 do 23: 59: 59 2007-05-09 23: 59: 59 będzie zaokrąglać do 2007-05-10 00:00:00 |
Element zakresów |
RRRR to cztery cyfry od 1900 do 2079, które reprezentują roku. MM jest dwie cyfry od 01 do 12, które reprezentują miesiąca w określonym roku. DD jest dwóch cyfr z zakresu od 01 do 31 w zależności od miesiąca, reprezentujące dzień miesiąca określony. hh jest dwucyfrowe od 00 do 23, który reprezentuje godzinę. mm jest dwucyfrowe od 00 do 59, która reprezentuje minuty. ss jest dwucyfrowe od 00 do 59, która reprezentuje drugą.Wartości, które są 29.998 sekund lub mniej są zaokrąglane niedziałający do najbliższej minutę, 29.999 sekund lub więcej wartości są zaokrąglane w górę do najbliższej minutę. |
Długość znaków |
Maksymalna pozycji 19 |
Limit rozmiaru dla składowania |
4 bajty stałej. |
Dokładność |
Jedna minuta |
Wartość domyślna |
1900-01-01 00:00:00 |
Calendar |
Kalendarz gregoriański (Nie obejmuje pełny zakres lat.) |
Zdefiniowany przez użytkownika ułamkowe drugiego precision |
Nie |
ŚWIADOME przesunięcie strefy czasowej i zachowania |
Nie |
Uwzględniaj pamiętać |
Nie |
ANSI i ISO 8601 zgodności
smalldatetimenie jest ANSI lub ISO 8601 zgodny.
Przykłady
A.Rzutowanie literały ciąg sekund do smalldatetime
Poniższy przykład porównuje konwersji sekund w literały ciągów ciąg do smalldatetime.
SELECT
CAST('2007-05-08 12:35:29' AS smalldatetime)
,CAST('2007-05-08 12:35:30' AS smalldatetime)
,CAST('2007-05-08 12:59:59.998' AS smalldatetime);
Dane wejściowe |
Output |
---|---|
2007-05-08 12:35:29 |
2007-05-08 12:35:00 |
2007-05-08 12:35:30 |
2007-05-08 12:36:00 |
2007-05-08 12:59:59.998 |
2007-05-08 13:00:00 |
B.Porównanie typów danych data i czas
Poniższy przykład porównuje wyniki rzutowania ciąg do każdego typu danych data i czas .
SELECT
CAST('2007-05-08 12:35:29. 1234567 +12:15' AS time(7)) AS 'time'
,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS date) AS 'date'
,CAST('2007-05-08 12:35:29.123' AS smalldatetime) AS
'smalldatetime'
,CAST('2007-05-08 12:35:29.123' AS datetime) AS 'datetime'
,CAST('2007-05-08 12:35:29. 1234567 +12:15' AS datetime2(7)) AS
'datetime2'
,CAST('2007-05-08 12:35:29.1234567 +12:15' AS datetimeoffset(7)) AS
'datetimeoffset';
Typ danych |
Output |
---|---|
time |
12:35:29.1234567 |
date |
2007-05-08 |
smalldatetime |
2007-05-08 12:35:00 |
datetime |
2007-05-08 12:35:29.123 |
datetime2 |
2007-05-08 12:35:29.1234567 |
datetimeoffset |
2007-05-08 12:35:29.1234567 +12:15 |