專案中遇到跨庫資料抽取時,字段定義相同型別相同長度,但是抽取失敗的情況。
經過對比發現,在資料庫初始安裝時該nls_length_semantic引數不一致,現記錄下操作步驟:
對於資料庫的修改字符集的問題,用於相容中文字元,一般需要使用兩個引數
nls_length_semantics =char
nls_characterset = al32utf8
檢視該引數的值可以檢視如下檢視:
select * from v$nls_parameters
where parameter in ('nls_length_semantics','nls_characterset');
修改兩個引數時,需要資料庫處於open狀態
alter system set nls_length_semantics = char scope = both;
alter
database
character
set interval_use al32utf8;
shutdown immediate;
startup;
caution:
一般中文使用兩個byte來存放中文,但是為了相容亞洲其他國家的字符集,所用使用的utf8,使用了三個byte,按照最新的字符集標準,將utf8進行擴充套件為al32utf8,用四個byte來存放。
在檢視 dba_tab_columns 檢視中可以檢視 char_length 設定的是char單位
oracle 資料庫字符集
oracle全球支援 即globalization support 允許我們使用本地語言和格式來儲存和檢索資料。通過全球支援,oracle可以支援多種語言及字符集,得以展示資料庫的強大魅力。1 字符集的基本知識 如果從頭說起,字符集最早的編碼方案來自於與ascii.這也是我們最常見的編碼方式。該方案...
oracle資料庫字符集
一 什麼是oracle字符集 oracle字符集是乙個位元組資料的解釋的符號集合,有大小之分,有相互的包容關係。oracle 支援國家語言的體系結構允許你使用本地化語言來儲存,處理,檢索資料。它使資料庫工具,錯誤訊息,排序次序,日期,時間,貨幣,數字,和日曆自動適應本地化語言和平台。影響oracle...
oracle資料庫字符集查詢
1 資料庫伺服器字符集 select from nls database parameters,其 於props 是表示資料庫的字符集。查詢結果如下 nls language american nls territory america nls currency nls iso currency a...