原文:
檢視/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資料庫字符集問題
最近做乙個專案,需要使用sybase資料庫。基本功能就是從sybase中讀取資訊在頁面顯示。頁面字符集是utf 8 sybase預設字符集是 encgb 本來功能是正常的。最近發現乙個問題,在資料庫中儲存一些生僻字後,如果直接用isql在sybase資料庫裡寫是可以正常儲存的。例如 喆,在資料庫裡儲...
資料庫字符集
1 檢視資料庫字符集 資料庫伺服器字符集select from nls database parameters,其 於props 是表示資料庫的字符集。客戶端字符集環境select from nls instance parameters,其 於v parameter,表示客戶端的字符集的設定,可能...
ubuntu下設定資料庫字符集
就linux環境下出現的資料庫亂碼的問題,以ubuntu為例進行的總結 ubuntu環境設定的字符集utf8,windows預設字符集是gbk,ubuntu的預設字符集為utf 8,這使 得在用telnet登入遠端伺服器或檢視windows檔案時出現亂碼。需要將ubuntu環境設定為gbk或gb23...