SQL Server的syslanguage表应用一例
来源:互联网 发布:mysql id命名规范 编辑:程序博客网 时间:2024/05/18 16:40
-----------------------------------------------------------------------------------------------
作者:翁彦
欢迎转载,请保留此申明信息。
欢迎联系我,enhydra_boy@tom.com
----------------------------------------------------------------------------------------------
最近,在csdn论坛上,前后回答了两位位朋友的问题,觉得有必要总结一下。
问题是这样
1 SQL Server 2000是中文版的,想能按照英文方式显示日期格式?
2 SQL Server 2000是中文版的,想能购显示中文月名?
让我们来分析一下,显示日期格式肯定和language有关,而且应该和当前session的language设置有关,肯定和服务器,数据库是否是中英文无关。
那么第一个问题就很简单了,
只需要
set language us_english
select convert(varchar(20),getdate(),107)
set language 简体中文
结果如下
Changed language setting to us_english.
--------------------
Sep 01, 2003
(所影响的行数为 1 行)
已将语言设置改为 简体中文。
但是第二个问题,似乎就不行了,我们可以测试一下
set language 简体中文
select convert(varchar(20),getdate(),107)
得到的却是
09 01,2003
不是需要的九月。
这需要进一步分析了。数据库支持的语言,应该有对应的日期月份简写的设置。
master.dbo.syslanguages就是存放了对应的信息。
可以查看以下syslanguages的结构
我们关心的是是其中的shortmonths和months这两项。
我们看到简体中文这一条,shortmonths,months都是01,02,03,...。
所以无论你怎么设置language,结果都是09 而不会是九月。
解决方法,大家都想到了。对了就是修改系统表。
use master
sp_configure 'allow update','1'
go
reconfigure with override
go
update dbo.syslanguages
set shortmonths='一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月',
months='一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月' where name='简体中文'
go
sp_configure 'allow update','0'
go
reconfigure with override
go
然后重起一下数据库服务器。
然后运行
select convert(varchar(20),getdate(),107)
go
--------------------
九月 01, 2003
select convert(varchar(100),getdate(),9)
go
----------------------------------------------------------------------------------------------------
九月 1 2003 11:36:25:507AM
问题解决了。
看来,很多问题需要仔细的想一下,分析一下,看看文档,自己手工实践一下,都能迎刃而解。
- SQL Server的syslanguage表应用一例
- 的syslanguage表应用一例
- SQL Server--全文本检索的应用(一)
- SQL SERVER 2000 系统表的应用
- 关于sql server临时表的应用
- SQL Server的系统表及其应用
- SQL Server系统表的应用
- SQL Server 表变量的应用介绍
- SQL Server中的临时表的应用
- SQL Server 应用开发(一)
- 一.Sql server的分类
- SQL SERVER 系统表应用
- SQL SERVER 系统表应用
- SQL Server Express和SQL Server Compact的应用
- SQL Server 2005全文检索技术在网站上的应用实录(一)
- SQL Server的系统表及其应用研究
- SQL-Server的链接服务器的应用
- SQL-Server的链接服务器的应用
- ORACLE DATE和TIMESTAMP数据类型的比较(一)
- ORACLE DATE和TIMESTAMP数据类型的比较(二)
- 让你的应用程序不再对数据库的改动“感冒”(一)
- 让你的应用程序不再对数据库的改动“感冒”(二)
- 让你的应用程序不再对数据库的改动“感冒”(三)
- SQL Server的syslanguage表应用一例
- SQLPlus命令使用指南(一)
- SQL Server中全角和半角字符的比较问题
- SQLPlus命令使用指南(二)
- 如何让PowerDesigner支持自动生成含SQL Server 2000的表和列注释的角本
- SQLPlus命令使用指南(三)
- ASE12.5数据库内嵌JAVA开发指南
- MSSQL2000的官方JDBC在应用动态代理机制遇到的异常问题解决
- ASP.net实现信用卡检查和自定义确认控件(一)