服务端字符集修改
1、确认服务端字符集
select userenv('language') from dual;
2、修改服务端字符集
首先以 DBA 身份登录 Oracle。Windows 系统下直接在命令行下运行命令 sqlplus /as sysdba 或在 SQL PLUS 下运行命令 /as sysdba。
然后依次运行命令:
- shutdown immediate; (把database停了)
- startup mount; (把database重开去可更改情況)
- alter system enable restricted session;
- alter system set job_queue_processes=0;
- alter system set aq_tm_processes=0;
- alter database open;
- alter database character set internal_use utf8;
- shutdown immediate;
- startup; (重开正常oracle)
命令执行结束后再次查看服务端字符集,已被修改为 UTF-8。
客户端字符集修改
1、确认客户端字符集
Windows 命令行运行 echo %NLS_LANG%,或运行 SQL 语句:
SELECT * FROM v$nls_parameters;
2、修改客户端字符集
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK