解决sybase中文以及大小写问题(服务器端)(utf8 乱码)
有关设置sybase中文字符集问题,从网上搜来的资料多为在isql环境下用命令设置。步骤如下:
(这里SYBASE的安装路径为c:sybase)
如何安装cp936字符集
3.在ISQL环境中
1>select name,id from syscharsets
2>go
找到name为cp936对应的id(假设为117)
4.1>sp_configure "default character set id",117
2>go
5.重启server两次
(注:第一次启动后,server会自动宕掉,需要第二次重启后才能使用)
除了这种方式还可以在sybase的图形管理界面下进行选择,我觉得这种方法最直观。在处理中文问题时一般设置sybase服务器端的字符集为utf8,而在客户端则使用cp936进行访问。下面先开始设置服务器端的字符集。
首先,打开Server Config界面。
图1
选择配置Adaptive Server…
图2
选择服务器后点击“继续”按钮。
图3
输入口令后点击“继续”按钮,进入管理界面。
图4
点击“语言”按钮进入字符集配置界面。
图5
这个界面是我已经设定好的情况。点击字符集下面第一个按钮“增加/撤除”来添加服务器端的字符集。
图6
将Unicode 3.1 UTF-8 Character Set添加进来。然后点击字符集下面第二个按钮“设置缺省”来设置默认字符集。
图7
设置完后要点击图7以及图5的确定进行保存设置,保存时需要耐心等待几分钟。然后由于希望在访问数据库时不区分大小写,所以还要设置一下字符的排序顺序。
点击图5中排序顺序下面的“设置缺省”按钮进入utf8字符集的各种排序管理界面,该界面中列出了对各种排序顺序的描述。
图8
选择图8中被选中的排序方式既可。由于对话框的大小不能改变所以不能看到完整的描述语句。一路确定进行保存之后须重启计算机并启动sybase数据服务。这样服务器端的不区分大小写的中文字符集就设置好了。