我在 Azure 中有一个 SQL Server,默认语言为 eu_english。这意味着日期的格式为 mdy,我需要它们为 dmy,我想在连接字符串中将语言设置为西班牙语。我已经尝试过了。但它不起作用:
jdbc:sqlserver://myazureURL:1433;DatabaseName=MyDataBase;Language=Spanish
我尝试添加 Language=Spanish,但不起作用。我还尝试过 Language=5,因为 5 是我的 SQL Server 语言的西班牙语 ID。
我需要这个,因为我无法从数据库设置更改默认语言。如果我尝试用它来更改默认语言:
EXEC sp_configure 'default language', 'Spanish';
它给了我这个错误:
EXEC sp_configure 'default language', 'Spanish';
编辑解决方案: 我解决了这个问题,包括将其添加到连接字符串中,因此在每个连接中它都会设置语言:
connectionInitSqls ="SET LANGUAGE Spanish"
根据@Jose Manuel Jurado Diaz给出的帖子更改Azure SQL数据库的默认语言。
目前,不支持使用存储过程或在记录时使用
T-SQL
在服务器级别设置默认语言。
因为,系统消息和日期时间格式由会话语言决定。
此问题的解决方法是使用以下命令。
要在连接字符串中提及语言,您可以使用您想要的语言指定此关键字当前语言。
Current Language=Spanish
如果连接已建立
SET LANGUAGE Spanish;
将语言从
us_english
更改为Spanish
并将日期格式从MDY更改为DMY
以下是示例代码和输出结果:
SELECT @@language;
select format(getdate(),'d');
SET Language Spanish;
SELECT @@language;
select format(getdate(),'d');
输出:
某些驱动程序不支持 ConnectionString 上的 Language= 或 Current Language=,因此解决方案是在成功连接后执行 SQL 命令“SET LANGUAGE Spanish;”
其他解决方案是在 SQL Server 上将默认语言设置为您所需的用户。一种方法是使用 Management Studio,单击用户右键,选择属性,然后将默认语言更改为该用户。