The first step is to view the server-side encoding select userenv('language') from dual;
The second step, execute the statement select * from V$NLS_PARAMETERS to check whether the VALUE item corresponding to NLS_LANGUAGE in the PARAMETER item in the first line is the same as the value obtained in the first step.
The third step, if it is not, you need to set the environment variable. The encoding used by the PLSQL client is inconsistent with the encoding on the server side. Garbled characters will appear when inserting Chinese.
The fourth step, set the environment variable Computer->Properties->Advanced System Settings->Environment Variables->New
Set variable name: NLS_LANG, variable value: the value found in step 1, mine is AMERICAN_AMERICA.ZHS16GBK
The fifth step, restart PLSQL, insert data normally