總結下win7機子安裝Oracle11g資料庫後修改預設字元集的步奏:
1. 資料庫服務端的修改
(1)正确設定ORACLE用戶端字元集的方法:
oracle用戶端字元集設定需要和伺服器端一緻,否則會出現亂碼問題。
首先連接配接伺服器,查詢伺服器端設定:
select * from v$nls_parameters;
找到:
NLS_LANGUAGE
NLS_TERRITORY
NLS_CHARACTERSET
環境變量nls_lang便是由這三部分組成
NLS_LANG = language_territory.charset
比如:
NLS_LANG = American_Japan.JA16SJIS
(2)改伺服器端字元集,
在windows下的cmd中,或者linux的終端terminal中,可以使用下面的方法登入sqlplus:
第一種方式:
在cmd或terminal中輸入指令:sqlplus /nolog
SQL> conn / as sysdba
第二種方式:
在cmd或terminal中輸入指令:sqlplus /nolog
SQL> conn flowcal/[email protected]
注:conn的基本格式為:“conn 使用者名/密碼@資料庫或net服務名”
然後執行以下指令
>shutdown immediate; (把database停了)
>startup mount; (把database重開去可更改情況)
>alter system enable restricted session;
>alter system set job_queue_processes=0;
>alter system set aq_tm_processes=0;
>alter database open;
>alter database character set utf8;
OR
>alter database character set internal_use utf8;
>shutdown immediate;
>startup; (重開正常oracle)
ORACLE資料庫字元集修改完成!
plsql用戶端的修改:(前提已經安裝好)
1) 設定環境變量(修改PATH和TNS_ADMIN環境變量)
對于NLS_LANG環境變量, 最好設定成和資料庫端一緻, 首先從資料庫端查詢字元集資訊:
SQL> select userenv('language') nls_lang from dual;
NLS_LANG
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
右擊"我的電腦" - "屬性" - "進階" - "環境變量" - "系統環境變量":
1>.選擇"Path" - 點選"編輯", 把 "D:\Oracle\app\YM\product\instantclient_11_2;" 加入;
2>.點選"建立", 變量名設定為"TNS_ADMIN", 變量值設定為"D:\Oracle\app\YM\product\instantclient_11_2;", 點選"确定";
3>.點選"建立", 變量名設定為"NLS_LANG", 變量值設定為"SIMPLIFIED CHINESE_CHINA.ZHS16GBK", 點選"确定";
最後點選"确定"退出.
啟動 PL/SQL Developer ,運作無問題。
參考:
http://blog.csdn.net/nsj820/article/details/6571105
http://blog.csdn.net/zhanggnol/article/details/7076171