SQL 具有文化参数的服务器格式不起作用
SQL Server FORMAT with culture parameter not working
我正在使用 SQL Server 2017 并尝试在 Format
函数中使用区域性。当 运行 服务器上的此查询结果不正确时:
SELECT @@VERSION --> Microsoft SQL Server 2017 (RTM-CU17) (KB4515579) - 14.0.3238.1 (X64) Sep 13 2019 15:49:57 Copyright (C) 2017 Microsoft Corporation Enterprise Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64
SELECT FORMAT(SYSDATETIME(), N'Y', 'fa'); --> February 2020
但是当 运行 这在另一台服务器 SQL server 2017 中时脚本工作正常:
SELECT @@VERSION --> Microsoft SQL Server 2017 (RTM-CU3-GDR) (KB4052987) - 14.0.3015.40 (X64) Dec 22 2017 16:13:22 Copyright (C) 2017 Microsoft Corporation Enterprise Edition (64-bit) on Windows 10 Enterprise 10.0 <X64> (Build 16299: )
SELECT FORMAT(SYSDATETIME(), N'Y', 'fa'); --> بهمن, 1398
必须检查哪些配置?
P.S: 我发现这个问题出现在Windows Server 2012 R2 及更低版本上。
终于找到问题了。此功能取决于安装在 SQL 服务器上的 Windows 版本。在 Windows Server 2012 R2
和 Windows 10
中添加了波斯历。
此图显示 fa
文化在 Windows Server 2012 R2
和 Windows 10
中的日期格式
这张图片显示了旧版本 Windows
中 fa
文化的日期格式
其实问题出在安装SQLServer的Windows服务器上。
对于您想使用的任何语言,Windows 服务器必须在 OS 级别安装此语言。
要在“Windows Server 2012 R2”或更高版本中安装,只需按照以下步骤操作:
- 搜索“控制面板”并打开它
- Select“查看方式:大图标”
- 点击“语言”
添加您需要的语言,然后为添加的新语言安装“语言包”。
之后,您在 FORMAT 函数中的参数将被接受。
我正在使用 SQL Server 2017 并尝试在 Format
函数中使用区域性。当 运行 服务器上的此查询结果不正确时:
SELECT @@VERSION --> Microsoft SQL Server 2017 (RTM-CU17) (KB4515579) - 14.0.3238.1 (X64) Sep 13 2019 15:49:57 Copyright (C) 2017 Microsoft Corporation Enterprise Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64
SELECT FORMAT(SYSDATETIME(), N'Y', 'fa'); --> February 2020
但是当 运行 这在另一台服务器 SQL server 2017 中时脚本工作正常:
SELECT @@VERSION --> Microsoft SQL Server 2017 (RTM-CU3-GDR) (KB4052987) - 14.0.3015.40 (X64) Dec 22 2017 16:13:22 Copyright (C) 2017 Microsoft Corporation Enterprise Edition (64-bit) on Windows 10 Enterprise 10.0 <X64> (Build 16299: )
SELECT FORMAT(SYSDATETIME(), N'Y', 'fa'); --> بهمن, 1398
必须检查哪些配置?
P.S: 我发现这个问题出现在Windows Server 2012 R2 及更低版本上。
终于找到问题了。此功能取决于安装在 SQL 服务器上的 Windows 版本。在 Windows Server 2012 R2
和 Windows 10
中添加了波斯历。
此图显示 fa
文化在 Windows Server 2012 R2
和 Windows 10
这张图片显示了旧版本 Windows
中fa
文化的日期格式
其实问题出在安装SQLServer的Windows服务器上。 对于您想使用的任何语言,Windows 服务器必须在 OS 级别安装此语言。 要在“Windows Server 2012 R2”或更高版本中安装,只需按照以下步骤操作:
- 搜索“控制面板”并打开它
- Select“查看方式:大图标”
- 点击“语言”
添加您需要的语言,然后为添加的新语言安装“语言包”。
之后,您在 FORMAT 函数中的参数将被接受。