@@ language全局变量与SQL Server实例中的默认语言设置之间的关系

时间:2017-07-28 13:03:34

标签: sql sql-server tsql

SQL Server中的实例级别存在此默认语言设置,可以按如下方式配置:

EXEC sp_configure 'default language', 23 ;  
GO  
RECONFIGURE ;  
GO  

它将默认语言设置的值更改为British English

但是当我在SQL Server Management Studio(SSMS)中运行以下查询时,它会输出 - us_english

SELECT @@language

我在实例级别设置和全局变量之间感到困惑。任何人都可以帮助我理解两者之间的差异/关系吗?

1 个答案:

答案 0 :(得分:3)

根据manualdefault language仅管理新创建的登录语言。现有登录已经有与之关联的语言(在您的情况下为us_english)。要更改 ,请使用ALTER LOGIN ... WITH DEFAULT_LANGUAGE

@@LANGUAGE是会话的当前语言。默认值来自登录,但可以在SET LANGUAGE的会话中更改,因此任何设置都不会多余。