oracle字符集問題

2021-07-11 18:32:09 字數 1433 閱讀 3262

1.資料庫:oracle11g 

初始字符集:american_america.utf8

通過客戶端實現字符集修改:simplified chinese_china.zhs16gbk

(1)windows環境

修改登錄檔

regedit--->開啟登錄檔:

hkey_local_machine/software/oracle/key_oraclient11g_home1

nls_lang修改為與oracle 資料庫字符集,nls_lang=simplified chinese_china.zhs16gbk

(2)設定系統環境變數

nls_lang=simplified chinese_china.zhs16gbk

(3)linux環境

修改/home/oracle與 /root使用者目錄下的.bash_profile中 

$ su oracle

$ cd ~

$ vim .bash_profile

export nls_lang="simplified chinese_china.zhs16gbk" 

通過客戶端去修改服務端資料庫字符集,首先確保客戶端字符集設定正確。

如果客戶端字符集設定與伺服器端字符集不一致,即使後期服務端修改正確後。

通過plsql查詢的結果也不正確。

select userenv('language') from dual;

伺服器端:simplified chinese_china.zhs16gbk

客戶端:american_america.utf8

注意nls_lang變數一定要配置正確否則會引起sqlplus 失效

更新字符集:

select * from nls_database_parameters

update props$ set value$='zhs16gbk' where name='nls_characterset';

2.修改資料庫字符集  

su - oralce

sqlplus /nolog

conn /as sysdba

sql>shutdown immediate; 

sql>startup mount exclusive; 

sql>alter system enable restricted session; 

sql>alter system set job_queue_processes=0; 

sql>alter system set aq_tm_processes=0; 

sql>alter database open; 

sql>alter database national character set internal_use utf8;

sql>shutdown immediate;

sql>startup;

ORACLE字符集問題

1.oracle資料庫字符集,即國家語言支援 nls 其作用是用本國語言和格式來儲存 處理和檢索資料。利用全球化支援,oracle為使用者提供自己熟悉的資料庫母語環境,諸如日期格式 數字格式和儲存序列等。oracle可以支援多種語言及字符集,oracle9i則支援57種語言 88個國家地域 235種...

Oracle字符集問題

oracle字符集問題一般可以分為三類 資料庫字符集,sqlplus的字符集 客戶端字符集 終端程式的字符集 非oracle的 1 資料庫字符集。資料庫字符集是所有字元問題的核心,只有資料庫本身的字符集正確了,客戶端的字符集才可能正確。這裡只的客戶端包括sqlplus以及我們自己讀資料庫的應用程式。...

oracle 字符集 問題

q 怎麼樣檢視資料庫字符集 a 資料庫伺服器字符集select from nls database parameters,其 於props 是表示資料庫的字符集。客戶端字符集環境select from nls instance parameters,其 於v parameter,表示客戶端的字符集的...