程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase綜合文章 >> Sybase中文亂碼解決辦法

Sybase中文亂碼解決辦法

編輯:SyBase綜合文章
解決Sybase中文問題
轉自(http://bageer707.Javaeye.com/blog/152965) 1.     JDBC連接串要有字符集設置
jdbc:
Sybase:Tds:192.168.3.11:5000/Wfis_db?charset=cp936 2.     服務器配置成cp936
(1)    使用isql查看當前已經安裝的字符集
isql -Usa -Plongtop
>use master
>go
>select id,name from syscharsets
>go
id name    0 ascii_8
   1 iso_1
   2 cp850
20 defaultml
21 thaidict
22 iso14651
24 utf8bin
25 binary
39 altnoacc
45 altdict
46 altnocsp
47 scandict
48 scannocp
50 bin_iso_1
50 bin_cp850
51 dict
52 nocase
53 nocasep
54 noaccent
55 espdict
56 espnocs
57 espnoac
59 rusnocs
64 cyrnocs
65 elldict
69 hundict
70 hunnoac
71 hunnocs
73 turknoac
74 turknocs
129 cp932bin
130 dynix
137 gb2312bn
140 cyrdict
155 turdict
161 euckscbn
163 gbpinyin
165 rusdict
179 sjisbin
192 eucjisbn
194 big5bin (41 rows affected)
從列表中看出沒有安裝cp936字符集 (2)    查看當前使用的缺省字符集
>sp_configure "default char"
>go
Parameter Name                 Default     Memory Used Config Value
         Run Value   Unit                 Type          ----------- -------------------- ----------
default character set id                 2           0           2
                   2 id                   static 缺省字符集的id是2,查看上面的列表,可以得知是cp850 (3)    因為上面的列表中沒有安裝cp936,所以就安裝cp936字符集
進入目錄C:\Sybase\charsets\cp936
運行命令 charset -Usa -Plongtop binary.srt cp936
運行完成後,系統就安裝了cp936字符集 (4)    驗證是否確實安裝了cp936字符集
isql -Usa -Plongtop
>use master
>go
>select id,name from syscharsets
>go
id name    0 ascii_8
   1 iso_1
   2 cp850
20 defaultml
21 thaidict
22 iso14651
24 utf8bin
25 binary
39 altnoacc
45 altdict
46 altnocsp
47 scandict
48 scannocp
50 bin_iso_1
50 bin_cp850
50 bin_cp936
51 dict
52 nocase
53 nocasep
54 noaccent
55 espdict
56 espnocs
57 espnoac
59 rusnocs
64 cyrnocs
65 elldict
69 hundict
70 hunnoac
71 hunnocs
73 turknoac
74 turknocs
129 cp932bin
130 dynix
137 gb2312bn
140 cyrdict
155 turdict
161 euckscbn
163 gbpinyin
165 rusdict
171 cp936
179 sjisbin
192 eucjisbn
194 big5bin (43 rows affected)
從列表中可以發現已經安裝了cp936,id是171 (5)    把系統的當前缺省字符集設置為cp936
>sp_configure "default char",171
>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   Unit                 Type          ----------- -------------------- ----------
default character set id                 2           0         171
                   2 id                   static (1 row affected)
Configuration option changed. Since the option is static, Adaptive Server must
be rebooted in order for the change to take effect.
Changing the value of 'default character set id' to '171' increases the amount
of memory ASE uses by 6 K.
(return status = 0) (6)    重啟Sybase服務,使更改生效
第一次重啟,系統會對已經存在的數據進行轉換,轉換完成後自動停止服務,只要再次啟動服務就可以了。 (7)    更改DB客戶端的字符集
DBArtisan中要更改客戶端的字符集為cp936才能連接cp936的服務器
通過菜單\Logfile\Options...打開對話框,選擇Connection標簽,
更改ClIEnt Character輸入框的值為cp936。數據庫的charset修改為cp936時,使用isql按如下的方式
isql -Usa -Plongtop -Sdbserver -Jcp936
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved