【发布时间】:2010-02-10 12:45:16
【问题描述】:
我有一个带有 clob 列的表 & 试图插入包含 =176048 个字符的签名字符数据,它抛出错误有插入异常数据事务 java.sql.SQLException: ORA-01704: string literal too long
【问题讨论】:
标签: oracle10g
我有一个带有 clob 列的表 & 试图插入包含 =176048 个字符的签名字符数据,它抛出错误有插入异常数据事务 java.sql.SQLException: ORA-01704: string literal too long
【问题讨论】:
标签: oracle10g
是的,您最多可以在 INSERT 语句中插入 4000 个字节——只需
插入 t (clob_col) 值 ('Hello World');
它有效。对于较大的块,您 将插入一个 EMPTY_CLOB() 然后 使用新创建的 lob 定位器 分块写入它。它看起来 像这样:
begin insert into t ( clob_col ) values ( empty_clob() ) returning clob_col into Local_Variable; dbms_lob.write( local_variable, .... ); end; /在plsql中。
【讨论】:
您只能插入最多 4000 个字符的字符串文字。否则你需要使用绑定变量。
【讨论】: