首 页 行业热点 新车 试驾评测 养车用车 车型库
当前位置:首页oracleORA-01704:stringliteraltoolong问题分析

oracleORA-01704:stringliteraltoolong问题分析

2020-05-25 来源:好土汽车网
导读 oracleORA-01704:stringliteraltoolong问题分析
oracleORA-01704:stringliteraltoolong问题分析

今天使⽤sql在oracle直接insert update⼀个表时,出现ORA-01704: string literal too long的错误,我们的sql是

update mall_config a set a.category_info='|标准件:1040140,1035382,1036586,1035383,1032451,1032469,141903,1036587,1044047,1035380,1035385,1455,1035379,1035376,1035464,141906,1046869,1035386,141909,1035377,141901,1046875,1

其中category_info字段是clob类型,⽽后⾯字符串内容很长,虽然clob可以⾜够可以保存这么长的字符串,但是sql语句的语法解析对字段却有长度限制,⽂字字符串过长!

有两种⽅法可以解决:

1.使⽤存储过程,把超长⽂本保存在⼀个变量中,然后再insert update1.

declare2.

v_clob clob :='⼀个长⽂本';3.

begin4.

insert into table values(a,3,:clob);5. end;2.字符串拼接,update使⽤字符串拼接

1.

update mall_config set category_info='安全防护:3003,' where id=1;2.

update mall_config set category_info=category_info||'|标准件:1040140,1035382,' where id=1;这都可以解决问题。

因篇幅问题不能全部显示,请点此查看更多更全内容