SET LANGUAGE (Transact-SQL)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric

Specifies the language environment for the session. The session language determines the datetime formats and system messages.

Transact-SQL syntax conventions

Syntax

  
SET LANGUAGE { [ N ] 'language' | @language_var }   

Note

To view Transact-SQL syntax for SQL Server 2014 (12.x) and earlier versions, see Previous versions documentation.

Arguments

[N]'language' | @language_var
Is the name of the language as stored in sys.syslanguages. This argument can be either Unicode or DBCS converted to Unicode. To specify a language in Unicode, use N'language'. If specified as a variable, the variable must be sysname.

Remarks

The setting of SET LANGUAGE is set at execute or run time and not at parse time.

SET LANGUAGE implicitly sets the setting of SET DATEFORMAT.

Permissions

Requires membership in the public role.

Examples

The following example sets the default language to Italian, displays the month name, and then switches back to us_english and displays the month name again.

DECLARE @Today DATETIME;  
SET @Today = '12/5/2007';  
  
SET LANGUAGE Italian;  
SELECT DATENAME(month, @Today) AS 'Month Name';  
  
SET LANGUAGE us_english;  
SELECT DATENAME(month, @Today) AS 'Month Name' ;  
GO  

See Also

Data Types (Transact-SQL)
syslanguages
sp_helplanguage (Transact-SQL)
SET Statements (Transact-SQL)