关于sybase的字符集问题
将Sybase的字符集调整为支持简体中文的cp936字符集。
步骤如下:
(这里假设SYBASE的安装路径为c:\sybase)
1.c:\>cd \sybase\charsets\cp936
2.c:\sybase\charsets\cp936> charset -U用户名 -P密码 -S数据库服务器名称 binary.srt cp936
更改默认字符集为cp936
3.在SQL环境中
1>select name,id from syscharsets(会列出字符集对应的id号)
2>go
找到name为cp936对应的id(假设为171)
.1>sp_configure "default character set id",171
2>go
5.重启server两次
(注:第一次启动后,server会自动宕掉,需要第二次重启后才能使用)
启动之后,要清空日志。应该是sybase日志恢复时不会转换字符集吧,所以先前的日志没有作用了。要及时清除掉!
清空提交日志dump tran dbname with truncate_only
=====================================================================
SYBASE使用utf8字符集出现乱码问题的解决
于国际化的原因,现在使用sybase15.0.3字符集utf8作为默认字符集,现在客户端与服务端一致都配置成为 locale=default,us_english,utf8 ,发现使用客户端写入数据后,汉字全为乱码。在isql下用iso_1,cp850字符集连接上,查询已有数据汉字全为乱码。
解决的办法:
将客户端改为cp936,或者在isql连接的时候指定字符集为简体中文字符集cp936即-Jcp936。
问题解决!
ps:在isql查看客户端字符集为:select @@client_csname
查看服务器的默认排序顺序:sp_configure "default sortorder"
————————————————————————————————————
——— 本文为andkylee个人原创,请在尊重作者劳动成果的前提下进行转载;
——— 转载务必注明原始出处 : http://www.dbainfo.net
——— 关键字: ASE 字符集 简体中文 CP936 UTF8 乱码
————————————————————————————————————