Oracle SQLPLUS 無法正常顯示中文

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedInEmail this to someonePrint this page

在Linux中,使用SQLPLUS登入Oracle時,如果出現無法變是中文字的問題,
很有可能是因為系統沒有設定環境變數所導致。

測試環境:

  • OS: CentOS Linux 6.4
  • DB: Oracle Database Express Edition 11g Release 2

00006

首先,先確認是否是因為沒有設定環境變數所導致,試著輸出$NLS_LNAG的值:

0000x

一片空白!!

因此目前得先找出NLS (NLS=National Language Support) 的編碼,
並將其設定在系統的環境變數中。

 

接下來,我們登入SQLPLUS,執行下句查詢目前的Character Set:

或執行下句查詢:

至此獲得了一串編碼的名稱,先記錄下來,登出SQLPLUS。

輸入export NLS_LANG=剛剛出現的編碼名稱,這邊是AMERICAN_AMERICA.UTF8

此時,重新登入後查詢中文TABLE:

00001x

中文就出現了!!

P.S.
此時的export只是暫時設定環境變數,若要每次系統重新啟動時皆自動設置,
可以在/etc/profile中加入:

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedInEmail this to someonePrint this page

Leave a Reply

你的電子郵件位址並不會被公開。 必要欄位標記為 *