我正在查询一个 oracle 9i 数据库:
SELECT * FROM table WHERE column LIKE '%' || '一些文本' || '%' 逃脱 '\';
它失败并出现错误“转义字符必须是长度为 1 的字符串”(ORA-01425 错误),而在 oracle express 10g 数据库中成功。
将其设置为双反斜杠 (ESCAPE '\\') 可以解决 oracle 9i 数据库的问题,但会为 10g 数据库生成相同的 ORA-01425 错误。
我无法编辑 SQL,因为它是通过 Telerik OpenAccess ORM 自动生成的。
导致上述 SQL 的 Linq 代码是:
activity.Name.Contains.("someText")
我希望两个数据库都处理 ESCAPE '\'... 或者,有另一种按名称或描述搜索表项的方法。
提前致谢!