您的位置:首页 > 数据库 > Oracle

解决Oracle中字符集导致一个汉字占用3个字节的问题

2014-11-26 17:43 691 查看
解决Oracle中字符集导致一个汉字占用3个字节的问题

新安装Oracle数据库时引起的问题

由于在安装Oracle数据库时选择安装的字符集一般为默认字符集,

可能不同计算机安装后,测试汉字占用字节数有的为3个字节,有的为2个字节,

由于这个原因,表名长度和字段名长度也会受到影响,

明显变化就是原来可创建的表名或字段名不能创建了,说超过长度限制了。

解决的方法就是把数据库的字符集改一下,如汉字占用字节数由2个字节变为3个字节等。

解决步骤为:

运行下语句,然后在Sys用户中表props$查看字符集“AL32UTF8”已改为“ZHS16GBK”

sqlplus /nolog

SQL>connection sys@tns/password as sysdba;

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 INTERNAL_USE ZHS16GBK;

SQL>ALTER DATABASE national CHARACTER SET INTERNAL ZHS16GBK;

SQL>SHUTDOWN IMMEDIATE;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: