修改Sybase字符集-Windows

在使用Sybase中,经常我们在安装完Sybase后,使用isql或程序插入中文数据后,查询出数据为乱码(中文字符全为‘?’),这是因为客户端的字符集和服务端的字
  
在安装完Sybase后,很多人在使用isql或程序插入中文数据后发现,查询出的数据是乱码(中文字符全为‘?’),这是因为客户端的字符集和服务端的字符集不一致造成的,Sybase默认安装后默认字符集为:iso_1。通常使用中文字符集在Sybase内是cp936。那么如何设置Sybase的字符集呢?修改方法如下:

Sqlclub学习社区


以Windows操作系统Sybase15为例: Sqlclub.cn

首先说明察看服务端字符集和客户端字符集的方法:

Sqlclub学习社区


查看服务器端字符集: 内容来自Sqlclub.cn

在isql环境中执行: 内容来自Sqlclub.cn

1>; sp_helpsort 内容来自Sqlclub.cn

2>; go

内容来自Sqlclub.cn


查看客户端字符集:

本文来自Sqlclub

在isql环境中执行:

本文来自Sqlclub

1>; select @@client_csname Sqlclub.cn

2>; go 内容来自Sqlclub.cn

修改服务端字符集方法: 本文来自Sqlclub

假设sybase安装目录为$sybase$

Sqlclub学习社区


◆1.转到$sybase$\ASE-15_0\bin目录

Sqlclub学习社区

执行命令:charset -Usa -P binary.srt cp936

Sqlclub学习社区

◆2.打开isql,执行下面的SQL查询出cp936对应的id

copyright Sqlclub

select id , name from syscharsets where name = 'cp936'

Sqlclub


go 本文来自Sqlclub

假设查询结果为171

Sqlclub


执行下面语句设定默认字符集 Sqlclub

sp_configure 'default char',171 --可能有误,以上面的查询结果为准

Sqlclub


go

copyright Sqlclub


关闭ASE Sqlclub

shutdown copyright Sqlclub

go

内容来自Sqlclub.cn


◆3.重新启动sybase服务两次(第一次启动会失败),启动服务

weblogic platform 10.3.1.0

你可能感兴趣的:(database)