INFORMIX字符集相關知識

2021-06-20 00:58:25 字數 1740 閱讀 7313

字符集的基本知識

如果從頭說起,字符集最早的編碼方案來自於ascii,這也是最常見的編碼方式。該方案起源於20世紀60年代初期,

最初是美國國會圖書館制定用來作為美國圖書館界書目交換的共同標準,最後完善成為美國的國家標準ascii(american

standard code for information interchange),之後進一步演變成世界性的計算機字元編碼標準iso646(其全名為

7-bit coded character set for information interchange),於是成為計算機編碼方案的基礎。

informix 資料庫最早支援的編碼方案也就是en_us.8859-1.

由於英文本元一般是以乙個位元組來儲存的,7位的編碼方案最多只能代表128個字元;經過擴充套件的8為編碼方案也能

代表256個字元,這遠遠不能滿足計算機發展的需要,對於亞洲國家複雜的字元儲存需要更多的碼位,於是各種編碼方案

隨之而生。

為了容納全世界各種語言的所有字元和符號,解決不同編碼之間的相容和轉換問題,2023年1月,十多家公司共同出資,

組建unicode協會,隨後unicode編碼產生了。

unicode 協會的口號是:給每個字元提供乙個唯一的數字,不論是什麼平台,不論是什麼程式,不論什麼語言。

最初unicode編碼使用2-byte(16bit)來進行編碼,但是最多只能容納65536個字元,仍然不夠使用,後來進行了

擴充,也就是unicode 3.1標準,增加了額外的補充字元定義,現在unicode 5.0標準已經發布,具體參考unicode

官方站點( 主要有3個實施標準:utf-8,usc-2和utf-16。informix通過informix

international language supplement 支援utf-8。

根據各種不同標準的含義,如果資料庫需要存放不同語言的不同字元和符號,需要進行跨資料庫的資料交換

與分析,一般建議使用unicode編碼方案。當然,unicode方案可以表示更多的字元,但是由於多位的儲存,需要額外

的儲存空間和網路傳輸,所以選擇最適合的資料庫字符集仍然需要慎重考慮。

一、檢視資料庫字符集

有如下兩種方式:

a.dbaccess dbname

select site from systables where tabname=' gl_collate'

b.dbaccess sysmaster

select * from sysdbslocale

二、檢視支援字符集情況

a.作業系統

locale -a |grep -i 字符集名

b.infomrix的gls

cd $informixdir

plfiles

檢視lc11.txt檔案資訊

三、如何設定字符集

由於informix資料庫的字符集是對整個例項有效,預設字符集為:en_us.819

其他字符集可以通過如下方式進行設定(只有資料庫初始安裝時才可以修改),以utf-8字符集為例。

在informix環境變數中新增

export lang=zh_cn.utf-8

export db_locale=zh_cn.utf8

export client_locale=zh_cn.utf8

重新初始化資料庫,新的資料庫支援utf8字符集。

字符集相關

1.檢視 nls lang 的方法 windows使用 echo nls lang 如 e echo nls lang american america.zhs16gbk unix使用 env grep nls lang 如 opt oracle env grep nls lang nls lang...

mysql字符集相關問題 MySQL 字符集問題

mysql 支援許多字符集及其編碼方案,甚至是不同編碼之間的轉換.在使用 mysql 進行應用程式程式設計時,常常會出現亂碼現象,這通常是由於客戶端沒有宣告與 mysql 伺服器通訊的字串編碼造成的後果.解決方案 設定變數 character set client 檢視當前資料庫的字符集 show ...

字符集相關問題

字符集相關問題 字符集目前有兩個大的類別 本地字符集和國際字符集,其中每一類別的字符集又有多個 不同的字元編碼例項。比如 本地字符集中基本上對於每乙個不同的地區和國家就會形成乙個 屬於自己的字符集 ascii,latin 1,chs等 國際字符集中同樣包括多種不同的編碼方案 utf8,utf16等 ...