12c 32k strings新特性 varchar2/nvarchar2 32K
1、查看
SQL> show parameter MAX_STRING_SIZE
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
max_string_size string STANDARD
由数据库参数max_string_size默认是standard,所以需要修改该参数值为extended
2、调整
关闭数据库实例,shutdown immediate(如果是RAC则需要关闭所有实例);
以upgrade模式启动数据库实例:startup upgrade;
SQL> shutdown immediate
SQL> startup upgrade
修改参数 MAX_STRING_SIZE 为EXTENDED
SQL> alter system set max_string_size=extended scope=both;
运行
SQL> @$ORACLE_HOME/rdbms/admin/utl32k.sql;
编译无效对象
检查有无失效对象
SQL> select count(1) from dba_objects where status <> 'VALID';
COUNT(1)
----------
2
编译无效对象
@$ORACLE_HOME/rdbms/admin/utlrp
重启
shutdown immediate
startup
SQL> show parameter MAX_STRING_SIZE
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
max_string_size string EXTENDED
3、测试
SQL> create table shangu(name varchar2(32767));
Table created.
SQL> desc shangu
Name Null? Type
----------------------------------------- -------- ----------------------------
NAME VARCHAR2(32767)