[20130915]12c新特性 varchar2支持32K长度.txt

[20130915]12c新特性 varchar2支持32K长度.txt

oracle 12c以前如果字符串长度超过4000,必须使用blob或者clob类型。12c开始支持超过4000的字符串长度,提高一些应用的灵活性,
达到32K,避免一些字段定义为clob,blob类型,提高处理能力。

但是12c默认的方式不支持大于4000的字符串长度,必须经过一些步骤升级完成,自己测试如下:

SYS@test> @ver
BANNER                                                                               CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production              0
SYS@test> show parameter max_string_size
NAME             TYPE    VALUE
---------------- ------- -----------
max_string_size  string  STANDARD
SYS@test> alter system set max_string_size='EXTENDED' ;
alter system set max_string_size='EXTENDED'
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-02095: specified initialization parameter cannot be modified

--不能在线修改这个参数。

SYS@test> alter system set max_string_size='EXTENDED'  scope=spfile ;
System altered.

--修改spfile的参数文件。shutdown immediate,进入升级模式startup upgrade;,调用@?/rdbms/admin/utl32k.sql。

SYS@test> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@test> startup upgrade;
ORACLE instance started.
Total System Global Area 1670221824 bytes
Fixed Size                  2403352 bytes
Variable Size            1006633960 bytes
Database Buffers          654311424 bytes
Redo Buffers                6873088 bytes
Database mounted.
Database opened.
SYS@test> @?/rdbms/admin/utl32k.sql

...

--如果存在pdb库,还必须升级PDB$SEED,以及PDB数据库,不然会出现如下提示,在启动时。

ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-14696: MAX_STRING_SIZE migration is incomplete for pluggable database PDB$SEED
Process ID: 1192
Session ID: 355 Serial number: 5
SYS@test> startup upgrade
ORACLE instance started.
Total System Global Area 1670221824 bytes
Fixed Size                  2403352 bytes
Variable Size            1006633960 bytes
Database Buffers          654311424 bytes
Redo Buffers                6873088 bytes
Database mounted.
Database opened.
SYS@test> ALTER SESSION SET CONTAINER = PDB$SEED;
Session altered.
SYS@test> @?/rdbms/admin/utl32k.sql
...
SYS@test> ALTER SESSION SET CONTAINER = TEST01p;
Session altered.
SYS@test> alter pluggable database test01p open upgrade;
Pluggable database altered.
SYS@test> @?/rdbms/admin/utl32k.sql
...

--再重新启动数据库,OK。

SYS@test> startup
ORACLE instance started.
Total System Global Area 1670221824 bytes
Fixed Size                  2403352 bytes
Variable Size            1023411176 bytes
Database Buffers          637534208 bytes
Redo Buffers                6873088 bytes
Database mounted.
Database opened.
SYS@test> alter pluggable database test01p open ;
Pluggable database altered.
==以scott用户test01p服务:
SCOTT@test01p> create table t1 (id number,text varchar2(32767));
Table created.
SCOTT@test01p> insert into t1 values (1,lpad('a',32767,'b'));
1 row created.

--OK,现在可以使用32K的字符串,实际上是32767的长度。

SCOTT@test01p> create table t2 (id number,text varchar2(32768));
create table t1 (id number,text varchar2(32768))
                                         *
ERROR at line 1:
ORA-00910: specified length too long for its datatype
时间: 2024-09-20 14:54:53

[20130915]12c新特性 varchar2支持32K长度.txt的相关文章

《Oracle数据库管理与维护实战》——1.3 Oracle 12c新特性

1.3 Oracle 12c新特性 Oracle数据库管理与维护实战 纵观甲骨文全球大会和甲骨文公司的各种资讯,我们可以发现云计算和大数据是两个重要的主题,Oracle 12c则融合了这两大主题.与以往的Oracle数据库相比,Oracle 12c在16个方面进行了更新.本节将详细介绍Oracle 12c数据库中的16个新特性. 1.3.1 支持多线程模式 在Oracle 12c中,Oracle引入了多线程模式,允许在Windows平台之外的UNIX.Linux等系统使用多线程模式.结合多进程与

软件大会分享PPT:面向开发和DBA的Oracle 12c新特性

在2016年12月10日的『中国软件大会上』,我分享了一个主题:<面向开发人员和DBA的Oracle 12c新特性>,从安全的主题开始,以在线变更为主线,分享了Oracle 12c的一些新特性,尤其是12.2的部分新特性. 在这个主题中,12.2 的 lockdown profile 成为我的出发点,通过这一新的安全机制,Oracle 12c 的PDB权限得以被限制,可以防范PDB的高权限操作对全局产生影响. 而在12.2中PDB的Clone,可以在线进行,这是较12.1的又一大进步: Ora

[20131121]12c新特性Session sequences.txt

[20131121]12c新特性Session sequences.txt http://docs.oracle.com/cd/E16655_01/server.121/e17209/statements_6016.htm SESSION Specify SESSION to create a session sequence, which is a special type of sequence that is specifically designedto be used with glo

[20131212]12c新特性建表 属性DEFAULT ON NULL.txt

[20131212]12c新特性建表 属性DEFAULT ON NULL.txt 在12c上建立表可以让插入NULL等于某个特定的值.举一个例子: SCOTT@ztest> @verBANNER                                                                               CON_ID--------------------------------------------------------------------

IE10对CSS3新特性的支持和HTML5新特性的支持

文章简介:IE10将增强对HTML5和CSS3的支持. Windows 8 终于发布了,虽然现在可用的只是开发者预览版,好消息是,IE 10 也随着发了,虽然现在还只有Windows 8可用.我们来看下IE10都有哪些新特性吧. IE开发者中心给到了一份详细的针对前端开发者的文档,列出了IE10支持的HTML5和CSS3新特性.嗯,它终于跟上了: CSS3 css region css3多列 Flexbox grid 定位浮动(positioned float) 3D变换(3D transfro

Docker 1.5新特性:支持IPV6、只读容器、容器运行监控,还有彩蛋

本文讲的是Docker 1.5新特性:支持IPV6.只读容器.容器运行监控,还有彩蛋,[编者的话]Docker 1.5是今年Docker第一个发布版本,在这个版本中Docker加入很多期望已久的新功能,新特性,让我们来看看吧!比如支持IPV6.只读容器.容器运行监控.构建时指定Dockerfiles....仔细看文章,还有彩蛋. Docker项目开发组决定在新的一年开始之初放出一些很酷的东西,大家都猜到了,那就是Docker 1.5,也是2015年Docker的第一个release版本.在这个版

12c新特性:Last Successful login time

[20150920]12c新特性:Last Successful login time.txt --12c有一个新特性,就是使用sqlplus登录时,会提示最后成功的登录时间.Last Successful login time. --起始这个不算什么特性,我个人想了解这个时间是从那里得来的. sqlplus scott/xxxxxx@test01p SQL*Plus: Release 12.1.0.1.0 Production on Sun Sep 20 17:54:37 2015 Copyr

[20130808]12c新特性Temporary undo.txt

[20130808]12c新特性Temporary undo.txt 12C提供特性临时表执行dml时生成的undo保存在临时表空间,这个特性叫Temporary Undo,由数据库参数temp_undo_enabled控制,有两个优点:     1.很明显减少redo在临时表做dml操作时.    2.允许在physical standby database上对临时表执行dml操作.(没有环境无法测试) 测试: SQL> @ver BANNER                         

[20140108]12c新特性_Statistics Feedback.txt

[20140108]12c新特性_Statistics Feedback.txt 摘自:Apress.Pro.Oracle.SQL.2nd.Edition.Nov.2013.pdf Statistics feedback, known as cardinality feedback prior to Oracle 12c, is a mechanism used by the optimizer to improve automatically plans' repeated query exe