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

解决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;

    原文作者:hsg77
    原文地址: https://blog.csdn.net/hsg77/article/details/41519127
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞