zestaw DATEFORMAT (języka Transact-SQL)

Ustawia kolejność części data miesiąc, dzień i rok do interpretacji date, smalldatetime, datetime, datetime2 i datetimeoffset ciągi znaków.

Aby zapoznać się z omówieniem wszystkich Transact-SQL Data i czas typów danych i funkcji, zobacz Data i godzina, Data typy i funkcje (języka Transact-SQL). Aby uzyskać informacje i przykłady, które są wspólne dla data i czas typów danych i funkcji zobacz Using Date and Time Data.

Topic link iconKonwencje składni języka Transact-SQL

SET DATEFORMAT { format | @format_var } 

Argumenty

  • format | **@**format_var
    To jest kolejność części daty.Poprawne parametry to mdy, dmy, ymd, ydm, myd i dym.Może to być kodowanie Unicode lub zestaw znaków dwubajtowych konwertowany na kodowanie Unicode.Wartością domyślną dla języka Angielski (Stany Zjednoczone)jest mdy.Domyślne formaty DATEFORMAT w poszczególnych obsługiwanych językach zawiera temat sp_helplanguage (Transact-SQL).

Remarks

DATEFORMAT ydm nie jest obsługiwana dla date, datetime2 i datetimeoffset typy danych.

Wpływ ustawienie DATEFORMAT interpretacji ciągów znaków może być inna dla datetime i smalldatetime wartości niż date, datetime2 i datetimeoffset wartości w zależności od formatu ciąg. To ustawienie ma wpływ na interpretacji ciągi znaków, że są one konwertowane na wartości dat do przechowywania w bazie danych.Nie ma wpływu na wyświetlanie data danych typu wartości, które są przechowywane w bazie danych lub w formacie magazynu.

Niektóre formaty ciągów znaków, na przykład ISO 8601, są interpretowane niezależnie od ustawienia DATEFORMAT.Aby uzyskać więcej informacji na temat sposobów korzystania z DATEFORMAT o różnych formatach, zobacz sekcję "ciąg dosłownym Data i godzina formaty" w Korzystanie z narzędzia Data i godzina, Data.

Ustawiono zestaw DATEFORMAT na wykonać lub uruchomić czas, a nie w czasie analizowania.

zestaw DATEFORMAT zastępuje data niejawna sformatować ustawienie USTAWIANIE JĘZYKA.

Uprawnienia

Członkostwo w grupie wymaga publiczne roli.

Przykłady

W poniższym przykładzie użyto innej data ciągi jako danych wejściowych w sesjach z tą samą DATEFORMAT ustawienie.

-- Set date format to day/month/year.
SET DATEFORMAT dmy;
GO
DECLARE @datevar datetime2 = '31/12/2008 09:01:01.1234567';
SELECT @datevar;
GO
-- Result: 2008-12-31 09:01:01.123
SET DATEFORMAT dmy;
GO
DECLARE @datevar datetime2 = '12/31/2008 09:01:01.1234567';
SELECT @datevar;
GO
-- Result: Msg 241: Conversion failed when converting date and/or time -- from character string.

GO