一、修改客戶端字符集
檢視/sybase/locales/locales.dat
%sybase%/locales/locales.dat
找到對應作業系統下的字符集配置,如windows
[nt]
locale = enu, us_english, iso_1
locale = fra, french, iso_1
locale = deu, german, iso_1
locale = rus, russian, cp1251
locale = hun, us_english, cp1250
locale = ell, us_english, cp1253
locale = heb, us_english, cp1255
locale = ara, us_english, cp1256
locale = trk, us_english, cp1254
locale = esp, spanish, iso_1
locale = jpn, japanese, sjis
locale = japanese, japanese, sjis
locale = chs, chinese, eucgb
locale = cht, tchinese, big5
locale = kor, korean, cp949
locale = us_english.utf8, us_english, utf8
locale = default, us_english, cp936
找到對應locale=default的行
如上面為: locale = default, us_english, cp936
檢視客戶端使用的字符集:
select @@client_csname
go二、修改伺服器字符集
select name,id from syscharsets
會列出字符集對應的id號,後續修改和查詢都可以上這個裡面來找id
檢視目前使用的字符集
sp_configure "default character set id"
記住run value值,比如是2
檢視系統當前支援的字符集
select name,id from master..syscharsets where id=2
go就可以查詢到系統當前使用的字符集名稱
或者使用如下命令查詢:
sp_helpsort
go修改字符集,找到你要更改的字符集名稱對應的id,用下面語句查詢:
select name,id from master..syscharsets
比如修改為cp936,id為171
sp_configure "default character set id",171
go重啟server兩次即可。
(注:第一次啟動後,server會自動宕掉,需要第二次重啟後才能使用)
三、如果沒有要安裝的字符集
如果想要修改的字符集不存在,需要先安裝字符集
命令列進入 \sybase\charsets\目錄
比如要安裝utf8,進入 \sybase\charsets\utf8目錄
要安裝cp936,進入 \sybase\charsets\cp936目錄
執行命令:charset -u使用者名稱 -p密碼 -s服務名 binary.src 要安裝字符集名
比如:charset -usa -p -szxck binary.srt utf8
然後select name,id from master..syscharsets就可以查詢到了
四、已有資料如何轉換字符集
bcp方式加字符集引數,全庫bcp出來,然後修改字符集後再bcp回去,這裡就不贅述bcp的方法
關於sybase的字符集問題
關鍵字 ase 字符集 簡體中文 cp936 utf8 亂碼 將sybase的字符集調整為支援簡體中文的cp936字符集。步驟如下 這裡假設sybase的安裝路徑為c sybase 1.c cd sybase charsets cp936 2.c sybase charsets cp936 char...
Sybase 資料庫設定字符集
原文 檢視 sybase locales locales.dat sybase locales locales.dat 找到對應作業系統下的字符集配置,如windows nt locale enu,us english,iso 1 locale fra,french,iso 1 locale deu...
SYBASE資料庫字符集問題
最近做乙個專案,需要使用sybase資料庫。基本功能就是從sybase中讀取資訊在頁面顯示。頁面字符集是utf 8 sybase預設字符集是 encgb 本來功能是正常的。最近發現乙個問題,在資料庫中儲存一些生僻字後,如果直接用isql在sybase資料庫裡寫是可以正常儲存的。例如 喆,在資料庫裡儲...