Oracle修改编码为GBK

由于前几天导入数据库文件的时候,一直导入不成功,因为在安装oracle的时候我的编码选择的是UTF-8,一个文字是3个字节存储的,导致了我很多的数据乱码以及字段长度越界。修改了编码为GBK以后问题解决。下面是修改编码时候的命令汇总。

首先先建议修改plsql的编码,修改环境变量,右键点击我的电脑点击属性,再进入高级系统设置

Oracle修改编码为GBK_第1张图片Oracle修改编码为GBK_第2张图片

NLS_LANG
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

接下来打开cmd黑窗口:依次执行即可。

C:\USERSset\MyPC> set ORACLE_SID=你想进入的数据库的那个sid,我的是orcl
C:\USERSset\MyPC> sqlplus /nolog

SQL> conn /as sysdba
Connected. 

SQL> shutdown immediate; 
Database closed. 
Database dismounted. 
ORACLE instance shut down. 

SQL> startup mount
Total System Global Area  236000356 bytes 
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.

SQL> select * from v$nls_parameters;
略 
19 rows selected. 

SQL> shutdown immediate; 
Database closed. 
Database dismounted. 
ORACLE instance shut down. 

SQL> startup
ORACLE instance started. 
Total System Global Area  236000356 bytes 
Fixed Size                   451684 bytes 
Variable Size             201326592 bytes 
Database Buffers           33554432 bytes 
Redo Buffers                 667648 bytes 
Database mounted. 
Database opened. 

 

你可能感兴趣的:(Oracle,oracle修改编码)