今天犯了个常识错误

Oracle 错误代码: 1704, 消息: ORA-01704: string literal too long at OCI call OCIStmtExecute

首先是用户需求查询所有包含'统一100'的SKU,直接在SKUlike输入框中选择了所有的包含统一100的sku,结果出现以上错误提示。

看见错误提示就想当然的认为是字符串太长,是oracle varchar2字符长度限制,不能超出4000字符导致。没有仔细看后面的报错sql内容。

其实问题很简单,跟oracle的sql查询一样,like模糊查询只能like一个条件。

问题总结一下哈[微笑]:oracle的varchar2字符长度限制是导致选择太长查询条件出现报错 ORA-01704 的原因。但如果报表的查询条件是用的like,就只能选择一个查询条件(跟sql语句like一样),输入多个查询条件 相当于 like '%a,b,c……%'了,不能出现正确的结果。

原文地址:https://www.cnblogs.com/lanshure/p/5832521.html