Coding is always a problem for non-English-speaking countries, the pro-test solution is as follows:
1.
View server-side encoding
Select Userenv (' language ') from dual;
The result I actually found was: American_america. Al32utf8
2.
EXECUTE statement SELECT * FROM V$nls_parameters
See if the value in the parameter item in the first row is the same as the one obtained in the first step for nls_language.
If not, you need to set the environment variable.
Otherwise, the encoding used by the Plsql client is inconsistent with the server-side encoding and garbled when inserting Chinese.
3.
Setting environment variables
New, environment variable, advanced system settings, properties, computer
Set Variable name: Nls_lang, Variable value: The 1th step to find the value (mine is American_america. AL32UTF8).
4.
Restart Plsql, insert data Normal
Add: PL/SQL Import data to another database garbled
Import the database as: Simplified Chinese_china. ZHS16GBK;
The export database is: American_america. Al32utf8
To help resolve this problem, the language and character set used to import the database are modified.
Start menu Open Run dialog box, use "regedit" command to enter the registry, locate My computer under: Hkey_local_machine/software
/ORACLE/KEY_ORADB10G_HOME1 (This path is the configuration information for ORACLE in the registry),
View the value named Nls_lang as simplified Chinese_china. ZHS16GBK, modified into American_america. Al32utf8,
then re-enter PL/SQL to import the data again, it should be normal.
Database encoding Chinese garbled