错误码:-2665
错误内容:记录超长
create table test(name varchar2(32768));
--插入长度为16384的数据
[执行语句1]:
insert into test values(repeat('A',16384));
执行失败(语句1)
-2665: 记录超长
在基表中,当没有指定 USING LONG ROW 存储选项时,插入VARCHAR数据类型的实际最大存储长度由数据库页面大小决定,如果指定了 USING LONG ROW 存储选项,则插入 VARCHAR 数据类型的长度不受数据库页面大小限制。
VARCHAR类型在表达式计算中的长度上限不受页面大小限制,为 32767。CHAR 同 VARCHAR 的区别在于前者长度不足时,系统自动填充空格,而后者只占用实际的字节空间。另外,实际插入表中的列长度要受到记录长度的约束,每条记录总长度不能大于页面大小的一半。
--开启using long row存储选项
alter table test enable using long row;
[执行语句1]:
insert into test values(repeat('A',16384));
执行成功, 执行耗时4毫秒. 执行号:1125
影响了1条记录
1条语句执行成功
文章
阅读量
获赞