您好,登錄后才能下訂單哦!
一、字符(Character)是各種文字和符號(hào)的總稱,包括各國(guó)家文字、標(biāo)點(diǎn)符號(hào)、圖形符號(hào)、數(shù)字等。字符集(Character set)是多個(gè)字符的集合,字符集種類較多,每個(gè)字符集包含的字符個(gè)數(shù)不同,常見字符集名稱:ASCII字符集、GB2312字符集(簡(jiǎn)體中文)、BIG5字符集(繁體中文)、 GB18030字符集(亞洲字符集合)、Unicode( 常用 UTF-8) 字符集等。
二、informix字符目錄介紹
Informix GLS 語言環(huán)境對(duì)常用的字符集進(jìn)行了命名及內(nèi)部編碼(采用 16 進(jìn)制編碼)管理。通過服務(wù)器端的文件:$InformixDIR/gls/cm3/registry 查看 GLS 字符名稱、編碼對(duì)照表。示例如下:
字符集名稱 編碼 十六進(jìn)制編碼
8859-1 819 # 0x0333
gb 57357 # 0xe00d
GB2312-80 57357 # 0xe00d
utf8 57372 # 0xe01c
big5 57352 # 0xe008
GB18030-2000 5488 # 0x1570
GLS 環(huán)境中不同字符集名稱可能對(duì)應(yīng)同一個(gè)字符集編碼,但一個(gè)字符集只能有一個(gè)編碼,也就是說字符集編碼才是唯一的。
GLS 環(huán)境中按照語言和地區(qū)把所支持的字符集分成不同的目錄。$InformixDIR/gls/lc11/ 語言 _ 地區(qū) /,如中文大陸地區(qū)的目錄為:$InformixDIR/gls/lc11/zh_cn/,該目錄下有如下兩個(gè)文件:1570.lco e00d.lco ,說明我們?cè)谠O(shè)置字符集時(shí),我們可以使用 zh_cn.GB18030-2000 zh_cn.gb zh_cn.GB2312-80 三個(gè)不同的名稱。這里(zh_cn.gb 與 zh_cn.GB2312-80 對(duì)應(yīng)相同的字符集)。
GLS 環(huán)境中不同的字符集可以正確的進(jìn)行轉(zhuǎn)換,查看那些字符集可以正確轉(zhuǎn)換的方法,查看目錄 $InformixDIR/gls/cv9 目錄下的是否存在指定字符集互相轉(zhuǎn)換的文件。如該目錄下有文件 e01ce00d.cvo 和 e00de01c.cvo 兩個(gè)文件,表示 GLS 通過這兩個(gè)轉(zhuǎn)換文件支持 UTF-8 與 GB 之間的字符轉(zhuǎn)換。
三、informix字符集設(shè)置
由于INFORMIX數(shù)據(jù)庫(kù)的字符集是對(duì)整個(gè)實(shí)例有效,默認(rèn)字符集為:en_US.819
其他字符集可以通過如下方式進(jìn)行設(shè)置(只有數(shù)據(jù)庫(kù)初始安裝時(shí)才可以修改);
在Informix環(huán)境變量中添加
export DB_LOCALE=zh_cn.GB18030-2000
export CLIENT_LOCALE=zh_cn.GB18030-2000
重新初始化數(shù)據(jù)庫(kù),新的數(shù)據(jù)庫(kù)支持UTF8字符集。
四、使用JDBC連接數(shù)據(jù)庫(kù)
jdbc:informix-sqli://192.168.1.1:9088/test:INFORMIXSERVER=ifxserver;NEWCODESET=GB18030,GB18030-2000,5488; CLIENT_LOCALE=zh_cn.GB18030-2000;DB_LOCALE=zh_cn.GB18030-2000
五、查看數(shù)據(jù)庫(kù)字符集
有如下兩種方式:
A.
dbaccess dbname
select site from systables where tabname=' GL_COLLATE'
B.
dbaccess sysmaster
select * from sysdbslocale
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。