PL/SQL Developer 解決中文亂碼問題

前 沿-能夠根據語言環境展現不一樣的符號 參考

NLS (National Language Support) is used to define national date, number, currency and language settings. For example, it can be used to change the currency symbol from $ to € (Euro); the language from English to Dutch, etc.sql

To see what NLS parameters are in effect, perform the below queries -windows

Client parameters (change with ALTER SESSION):服務器

SELECT * FROM nls_session_parameters;## 優先級最高

Instance parameters (change with ALTER SYSTEM):session

SELECT * FROM nls_instance_parameters;## 優先級第二高

Database parameters (set during database creation):測試

SELECT * FROM nls_database_parameters;

Note that session parameters take precedence over instance and database parameters. Instance parameters take precedence over database parameters.字體


1、查看當前用戶客戶端設置的語言環境 

參考了博文 編碼


NLS_LANG格式:
NLS_LANG = language_territory.charset
有三個組成部分(語言、地域和字符集),每一個成分控制了NLS子集的特性。其中:language 指定服務器消息的語言。territory 指定服務器的日期和數字格式。charset 指定字符集。
spa


簡單版本:首先,經過 code

select userenv('language') from dual;orm


GBK以下:

windows中建立一個名爲「NLS_LANG」的系統環境變量,

設置其值爲SIMPLIFIED CHINESE_CHINA.ZHS16GBK,而後從新啓動 pl/sql developer,這樣檢索出來的中文內容就不會是亂碼了。 通常狀況下,設置NLS_LANG和區域語言以後就能夠顯示正常了。


2、檢查服務器編碼:

執行SQL語法:

SELECT * FROM nls_database_parameters;  

說明:#雖然個人 database設置的 America 可是它優先級沒有咱們設置的NLS 高,因此會優先按照咱們所設置的中文顯示。不必定非要和NLS設置的一致,不少博文都說必須一致,應該是不許確的。


3.從新鏈接sqlplus,查看數據:

顯示正常.

4.PL/SQL Developer設置並從新鏈接:

pl/sql developer的菜單->tools->preferences->user interface->fonts 中修改成中文字體(實際測試不修改也行)

從新鏈接,如圖:

顯示正常.OK!

3、若是是windows 的display language 是English

須要修改location和administrative 下面的language for non-unicode programs

相關文章
相關標籤/搜索