如何通过sql的insert语句插入大量字符串到oracle的clob字段?

Posted 那就123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过sql的insert语句插入大量字符串到oracle的clob字段?相关的知识,希望对你有一定的参考价值。

当通过insert语句直接插入大量字符串(主要是html的内容),超过4000字符时候,就会报:

ORA-01489: 字符串连接的结果过长

虽然字段是clob,足以存储,但是通过这种直接插入的时候,因为没有强制指定带插入字符串为clob类型,

oracle会把插入的字符串作为 “字符串类型”处理,由于oracle有最大字符串限制(不超过4000个字符),所以会报错。

解决思路:指定待插入字符串类型为clob,可以使用过程或存储过程

例子:

DECLARE
 REALLYBIGTEXTSTRING CLOB := ‘待插入的海量字符串‘;
BEGIN

   INSERT INTO test_table VALUES(‘test‘, REALLYBIGTEXTSTRING, ‘0‘);
end ;
/

commit;

这样就可以解决问题。

以上是关于如何通过sql的insert语句插入大量字符串到oracle的clob字段?的主要内容,如果未能解决你的问题,请参考以下文章

mysql 大量数据插入优化

mysql 大量数据插入优化

mysql 大量数据插入优化

SQL一次性插入大量数据

如何插入多个insert sql语句

(转)SQL一次性插入大量数据