話很少說,先說下此次遇到的問題。在64位操做系統上裝64位oracle時,原本默認的編碼是SIMPLIFIED CHINESE_CHINA.ZHS16GBK,可是實際安裝的時候卻沒有這個編碼,裝完後發如今sqlplus裏面數據亂碼,網上找了好多資料 終於找到一個靠得住的解決辦法,就是在環境變量中添加一項,NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 而後亂碼就解決了。 sql
plsql developer由於沒有64位版本的,因此若是什麼都不配置的話在64位操做系統是用不了的,解決辦法以下: 數據庫
首先下載一個oracle客戶端,解壓獲得的文件,將獲得的文件放進oracle安裝目錄下的product下,而後再由oracle客戶端解壓下的文件夾根目錄拷貝oracle的安裝目錄下的NETWORK文件夾,接下來在plsql developer中的工具-首選項-oracle-鏈接 下的oci庫選擇oracle客戶端中的oci.dll文件路徑便可。 session
可是此時的plsql developer鏈接數據庫會發現亂碼問題存在,主要仍是編碼問題,具體哪一個編碼不對不是很清楚,解決辦法以下: oracle
SQL> shutdown immediate; 工具
Database closed. 編碼
Database dismounted. 操作系統
ORACLE instance shut down. rest
SQL> startup mount ORACLE instance started. code
Total System Global Area 236000356 bytes ci
Fixed Size 451684 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
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;
System altered.
SQL> alter database open;
Database altered.
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;
ALTER DATABASE CHARACTER SET ZHS16GBK ERROR at line 1:
ORA-12712: new character set must be a superset of old character set
提示咱們的字符集:新字符集必須爲舊字符集的超集,這時咱們能夠跳過超集的檢查作更改:
SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
Database altered.
alter system disable restricted session;//這句是設置全部用戶均可以登陸數據庫的
另外一種編碼格式
simplified chinese_china.utf8