报错信息:2402 error converting characters into server's character set some character could not be converted
如何查看服务器端、客户端字符集
查看服务器端字符集:
在isql 环境中执行:
1> sp_helpsort
2> go
查看客户端字符集:
在isql 环境中执行:
1> select @@client_csname
2> go
Sybase 中文乱码是由于默认的编码集为ISO-1 ,在Sybase Central v4.3中中文显示为乱码,将字符集改成CP936后,中文乱码解决。
更换字符集方法:
一、打开Sybase Central 连接上数据库,打开master数据库的syscharsets表,查看name列里面有没有CP936数据,如果没有,进入步骤二;如果有,操作步骤三。
二、运行 --> CMD 进入DOS窗口命令提示,进入目录 D:\sybase\charsets\cp936 (这是我的Sybase安装目录),输入命令 charset -Usa -P -S binary.srt cp936
三、按步骤一,打开master数据库的syscharsets表,查看name列CP936对应的id应该是171,在左边数据库服务器名上点(我的服务器名为GZLCL)“右键-->属性 --> 服务器配置 ”在“显示配置参数”中选择 “Langguages” ,“default character set id"填写171 ,“确定” 然后重新启动服务。
或者isql命令行:sp_configure "default character set id",171
四、配置locales.dat文件:文件路径为D:\sybase\locales\locales.dat 用记事本打开 找到 “[NT]” 将其默认字符集改为locale = default, us_english, cp936
这样在Sybase Central 里面中文乱码就可以解决了。