程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> 字符集、國家字符集及NLS_LANG運行庫

字符集、國家字符集及NLS_LANG運行庫

編輯:Oracle教程

字符集、國家字符集及NLS_LANG運行庫


--unicode編碼方案
--三個實施標准:utf-8,usc-2,utf-16
--oracle數據庫字符集
--字符集character set
--國家字符集national character set
--字符集主要作用
--用於存儲varchar2,char,clob,long類型數據
--標示表名,列名,以及pl/sql變量等;
--存儲sql和plsql代碼
--國家字符集用於存儲nchar,nvarchar2,nclob等數據類型;
--一般為AL16UTF16
--簡體中文平台的字符集一般為ZHS16GBK;
--常見中文編碼
--ZHS16GBK231280 GBK2312-80 16bit,ASCII
--ZHS16GBK GBK 16bit,ASCII,UDC;
--GBK2312 1981年實施,
--GBK 1995年實施,支持全部中日韓漢子
--GBK和GBK2312的編碼是不同的,同一個編碼可能表達不同的漢字
--AL 開頭,如AL16UTF16,AL表示試用所有原因;
--NLS運行庫路徑:ORACLE_HOME/nls/data
--定義語言NLS_LANGUAGE
--定義區域NLS_TERRITORY
--定義字符集NLS_CHARACTERSET
--中文的文件,lx00023.nlb,通過locale Builder打開
--字符和編碼的轉換

select dump('蓋') from dual;
--------------
---typ=96 len=2:184.199
select concat(to_char(184,'xx'),to_char(199,'xx')) from dual;
--b8 c7
select to_number('b8c7','xxxxxx') from dual;
--47303
select chr(47303) from dual;


--蓋
--NLS_LANG的影響
--進行exp攻擊進行導出的操作時候,非常重要的是客戶端的字符集設置,NLS_LANG設置
--NLS_LANG=<language>_<Territory>.<client characterset>
--language指定了日期的顯示方式,oracle消息使用的語言
--territory參數指定了貨幣和數字的格式
--characterset控制了字符集
--導入導出和字符轉換
--源數據庫和目標數據庫的字符集不同
--導入的時候設置客戶端NLS_LANG等於導出時候的字符集,轉換發送在insert數據到其他字符集的目標數據中;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved