oracle中注釋都是問號?中文顯示不出來問題


本人在工作中需要把開發上的庫恢復到自己的虛擬機里面,然而搗鼓了許久建立好數據庫之后,在使用建表語句初始化表的時候,發現注釋都是?????

然后一臉懵逼不知何解,網上一大堆是說修改環境變量

  NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

然而我瞅了一眼我的環境變量,有這個玩意兒,我就納悶了。

后來看到一位攻城獅的一篇文章,彩筆才恍然明白。

 

查看oracle數據庫字符集:
  select userenv('language') from dual;
查看oracle數據庫的編碼
select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';

查詢結果:
  SIMPLIFIED CHINESE_CHINA.AL32UTF8

 

解決方法如下:

修改oracle數據庫字符集:(在shell命令下SQL Plus中)
1.打開dos窗口,以sysdba的身份登錄上去
  [oracle@localhost ~]$ sqlplus / as sysdba;

  sql> connect / as sysdba;

2.關閉數據庫

  sql> shutdown immediate;
3.以mount打開數據庫
  sql> startup mount;
4.設置session
  sql> alter system enable restricted session;
  system altered.
  sql> alter system set job_queue_processes=0;
  system altered.
  sql> alter system set aq_tm_processes=0;
5.啟動數據庫
  sql> alter database open;
6.修改字符集
  sql> alter database character set internal_use UTF8;
7.關閉,重新啟動
  sql> shutdown immediate;
  sql> startup;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM