Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analysplattformssystem (PDW)
SQL-analysslutpunkt i Microsoft Fabric
Lager i Microsoft Fabric
SQL-databas i Microsoft Fabric
Sätter ordningen på månad, dag och år för att tolka datumteckensträngar. Dessa strängar är av typen date, smalldatetime, datetime, datetime2 eller datetimeoffset.
En översikt över alla datatyper och funktioner för datum och tid Transact-SQL finns i Datatyper och funktioner för datum och tid (Transact-SQL).
Transact-SQL syntaxkonventioner
Syntax
SET DATEFORMAT { format | @format_var }
Arguments
format | @format_var
Är ordningen på datumdelarna. Giltiga parametrar är mdy, dmy, ymd,ydm, myd och dym. Kan antingen konverteras till Unicode eller dubbelbyteteckenuppsättningar (DBCS) till Unicode. Den amerikanska engelska standarden är mdy. För standardformatet DATEFORMAT för alla stödspråk, se sp_helplanguage (Transact-SQL).
Anmärkningar
DATEFORMAT ydm stöds inte för datatyper av datum, datetime2 och datetimeoffset .
DATEFORMAT-inställningen kan tolka teckensträngar olika för datumdatatyper, beroende på deras strängformat. Till exempel kan datetime- och smalldatetime-tolkningar inte stämma överens med date, datetime2 eller datetimeoffset. DATEFORMAT påverkar tolkningen av teckensträngar när de konverteras till datumvärden för databasen. Det påverkar inte visningen av datumdatatypvärden eller deras lagringsformat i databasen.
Vissa teckensträngsformat, till exempel ISO 8601, tolkas oberoende av DATEFORMAT-inställningen.
Inställningen av SET DATEFORMAT ställs in vid exekverings- eller körningstid och inte vid parsetid.
SET DATEFORMAT åsidosätter den implicita datumformatinställningen i SET LANGUAGE.
Permissions
Kräver medlemskap i offentlig roll.
Examples
Följande exempel använder olika datumsträngar som indata i sessioner med samma DATEFORMAT inställning.
-- 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