Oracle 12c数据库扩展字段属性超过4000字节

在oracle 12c之前版本,varchar2和nvarchar2数据类型的字段长度最大值是4000,在12c版本已扩展最大值支持到32767,也就是32kb,而参数MAX_STRING_SIZE就是控制扩展数据类型extended data type的最大长度:
• standard:代表12c之前的长度限制,即varchar2和nvarchar2 4是4000 bytes,raw是2000,且系统 默认是standard;

• extended:代表12c 32k strings新特性,varchar2、nvarchar2、raw最大长度是32767,即32kb

由数据库参数max_string_size默认是standard,所以需要修改该参数值为extended,为数据库配置扩展数据类型的具体步骤如下:
1.修改参数MAX_STRING_SIZE 为EXTENDED:

ALTER SYSTEM SET MAX_STRING_SIZE = EXTENDED SCOPE=SPFILE;

2.关闭数据库实例,

shutodnw immediate;

PS:如果是RAC则需要关闭所有实例

3.以upgrade模式启动数据库实例:

 startup upgrade;

4.运行脚本:

 SQL> @$ORACLE_HOME/rdbms/admin/utl32k ;

5>重启数据库实例。

 SQL> shu immediate;
 SQL> startup;

你可能感兴趣的:(Oracle,oracle)