Original URL: http://blog.163.com/magicc_love/blog/static/18585366220123111128283/
Start PL/SQL Developer character encoding inconsistency error
Database Character Set (Al32utf8) and Client character set (ZHS16GBK) are different.
Character set conversion may cause unexpected results.
Note:you can set the client character set through the Nls_lang environment variable or the Nls_lang registry key in
hkey_local_machine\software\oracle\key_oracle_10g.
Open the Registry by command regedit. Find the path to the hint in the article and find the value of the Nls_lang key:
Simplified Chinese_china. Zhs16gbk
Modified to: Simplified Chinese_china. Al32utf8
Another possibility is that the installation of 11g did not select the custom installation caused by the
Open Plsql and execute the following code:
Sql> Conn/as SYSDBA
sql> shutdown immediate;
Sql> Startup Mount
sql> ALTER SYSTEM ENABLE RESTRICTED SESSION;
sql> ALTER SYSTEM SET job_queue_processes=0;
sql> ALTER SYSTEM SET aq_tm_processes=0;
sql> ALTER DATABASE open;
sql> ALTER DATABASE CHARACTER SET ZHS16GBK;
Ora-12712:new character set must be a superset of the old character set
Hint to our character set: The new character set must be a superset of the old character set, and we can skip over the superset check to make the change:
Sql> ALTER DATABASE Character set Internal_use ZHS16GBK;
--we see that this process is identical to the internal procedure of the ALTER DATABASE CHARACTER set operation, which means that the help provided by Internal_use is to get the Oracle database to bypass the checksum of the subset and the superset.
Sql> select * from V$nls_parameters;
sql> shutdown immediate;
Sql> Startup
Sql> select * from V$nls_parameters;
Plsql the database Character set (AL32UTF8) is inconsistent with the client character set (ZHS16GBK) after logging in, PL/SQL database character set (AL32UTF8) and client character set ( ZHS16GBK) is different