SQL长字符串处理
2022/5/31 2:19:55
本文主要是介绍SQL长字符串处理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
环境:oracle12,clob字段
问题描述:ORA-01704: string literal too long
更新的字段太长,可以考虑变量替换
ORA-06550 string literal too long
超出string32k长度限制,只能用拼接符连接
情景一:用declare变量替换
遇到要往数据库插入长字符串,该字符串很长并且无法从该库中其他表串表得到。
直接将该字符串复制进SQL中就会出现ORA-01704: string literal too long的报错
考虑使用变量替换的办法:
declare
v_clob1 clob :='长字符串';
begin
update table_name set REQUEST = v_clob1 where id = '0f5f505127ef41d7a7cead11ed';
end;
当长字符串小于32k时,可以用变量替换的方法直接改
情景二:正则表达式
需要修改长字符串的内容,此时如果用declare定义变量手动修改后再用字符串copy进去,也可以解决。
但是如果此时字符串长度特别长,远远超过32k,那么可以考虑正则表达式直接替换
SQL里面的replace方法
如下,要加下面表中的name从’很好‘的好字更新成其他字符串
update table set name = replace(name,'好','Provided token isn''t active') where id = '0f5f505127ef41d7a7cead11eddc5f26';
对于长字符串并且原先该值存在,直接用replace函数用起来方便很多
这篇关于SQL长字符串处理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-20测试人员都是画画大神,让我看看谁还不会用代码图?
- 2024-05-20年薪百万的程序员都在用的摸鱼方式……
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了