今天完成了一个sybase开发库的迁移工作,中间碰到sybase的字符集问题,又学到一点东西,虽然是比较基础的东西。

通常sybase软件和数据库服务配置完成后,都需要修改default language和charset以满足你的应用需求。本例在windows下安装后,sybase server的default language 为english,charset为cp850,而应用需要采用的字符集eucgb,语言为chinse。

服务器端修改方法如下:

1、查看当前数据库字符集

sql>sp_helpsort

sql>go

2、安装字符集

$SYBASEcharsetseucgb> charset -Usa -Psa_pass -Sserver_name binary.srt eucgb
3.在SQL环境中

>select name,id from syscharsets
>go
找到name为cucgb对应的id(假设为170)
4.配置默认字符集

>sp_configure “default character set id”,170
>go

5、修改完成后重启两次(第一次重启数据库会down掉)

客户端:

在$SYBASElocaleslocales.dat中找到[NT]项下面的

locale = enu, us_english, iso_1
locale = fra, french, iso_1
locale = deu, german, iso_1
locale = japanese, japanese, sjis
locale = chs, chinese, eucgb
locale = cht, tchinese, big5
locale = kor, korean, eucksc
locale = us_english.utf8, us_english, utf8
locale = default, us_english, iso_1

直接修改最后一行default的language和charset即可。

当然用server config也同样能完成上面的功能

详细可参考:http://www.sybase.cn/cn/content/support/exp_jszc_ase_cj_031105.html



 


Write a comment

You need tologin.