首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Sybase >

sybase 字符节的有关问题

2012-03-03 
sybase 字符节的问题关于sybase的字符集的问题。该如何设置一、将cp936拷贝在sybase/charsets/下二、导入cp93

sybase 字符节的问题
关于sybase的字符集的问题。该如何设置
一、将cp936拷贝在sybase/charsets/下
二、导入cp936字符
1.c:\>cd \sybase\charsets\cp936 
2.c:\sybase\charsets\cp936> charset -Usa -P binary.srt cp936 
三、修改sybase配置
isql -Usa -P
1>select name,id from syscharsets 
2>go 
找到name为cp936对应的id(假设为171) 
1>sp_configure 'default character set id',171 
2>go 
重启server两次 
(注:第一次启动后,server会自动宕掉,需要第二次重启后才能使用) 

结果还是不这么管用。。

在C:\Sybase\locales中 nt 的locale = default, us_english, iso_1的iso_1改成了cp936

请教

[解决办法]
可能参考 更改SYBASE默认字符集为CP936
[解决办法]
更改SYBASE默认字符集为CP936

注意:更改字符集后要重新建立数据库。

1、在isql状态下查看原来数据库字符集使用情况,服务器和客户端的都要查看,方法是:
获得服务器端的字符集情况:
1>sp_helpsort
2>go

输出结果应为:
Character Set = 2, cp850
Code Page 850 (Multilingual) character set.
Sort Order = 50, bin_cp850
Binary Sort Order for Code Page 850 (cp850).

获得客户端字符集情况:
1>select @@client_csname
2>go
输出结果应为:iso_1

说明:很多时候应用程序报错,客户端和服务器端字符集不相匹配。


2、将数据库的缺省字符集设置为cp936:
C:\>cd sybase
C:\sybase>cd charsets
C:\sybase\charsets>cd cp936
C:\sybase\charsets\cp936>charset -Usa -Psybase -Sdiren binary.srt cp936

charset –U用户名 –P密码 –SPORTALSERVER服务名(不可为ip) binary.srt cp936

你将看到下面的信息,表示这时你已经成功添加了cp936字符集到你的系统中。
Loading file 'binary.srt'.
Found a [sortorder] section.
This is Class-1 sort order.
Finished loading the Character Set Definition.
Finished loading file 'binary.srt'.
1 sort order loaded successfully

3、接着是将添加的cp936设置为你的缺省值。方法是:
C:\sybase\charsets\cp936>isql -Usa -Psybase -Sdiren
1> select name,id from syscharsets
2> go
ascii_8 0
iso_1 1
cp850 2
bin_iso_1 50
bin_cp850 50
bin_cp936 50
cp936 171
这样知道你的cp936的ID号是171

4、将server的数据库缺省的字符集设置为cp936
1> sp_configure 'default character set id',171
2> go
In changing the default sort order, you have also reconfigured SQL Server's default character set.
Parameter Name Default Memory Used Config Value Run Value
------------------------------ ----------- ----------- ------------ -----------
default character set id 1 0 171 2
(1 row affected)
Configuration option changed. Since the option is static, Adaptive Server must be rebooted in order for the change to take effect.
(return status = 0)

5、重新启动服务器两次(参考使用DOS命令net start SYBSQL_diren)。第一次启动报错“服务器SYBSQL_diren不能启动,请检查它的配置”很正常,第二次正确启动,表明你的设置成功了。

6、在DOS下用edit修改客户端缺省字符集文件c:\sybase\locales\locales.dat
c:\sybase\locales\>edit locales.dat
首先找到[NT]操作系统分组,然后定位到该分组最后一行“local = default, us_english, iso_1”,将其修改为:“local = default, us_english, cp936”。
参考步骤1,确认服务器端和客户端字符集均已修改正确。

7、在Sybase Central中,重新建立新的空数据库,仔细规划好生产数据库数据设备和日志设备的大小。


[解决办法]
按照步骤配就行了.

热点排行