我正在内存数据库中使用h2。我有一个db列,它将数据存储为clob数据类型。我知道如何存储clob并从db读取它。
问题是我希望在sql查询中使用like子句进行通配符搜索。
我的列名是“payload”
我试过的jdbc查询,
SELECT * FROM TABLE WHERE PAYLOAD LIKE '%SOME-STRING%';
SELECT * FROM TABLE WHERE TO_CHAR(PAYLOAD) LIKE '%SOME-STRING%';
这些查询在oracle中运行得很好,但是当springjdbc连接到h2db时不会返回任何结果,也没有异常等。我尝试了其他varchar列,结果是like子句(健全性检查)。这里需要什么配置?
1条答案
按热度按时间nkoocmlb1#
感谢回复评论。
基于此,您可以尝试将prepared语句值的“%”部分移动到查询中。它可能会被转义(即字面解释)。
再看一遍,我看到了一个很好的关于这个的线索,它给出了不同的建议,所以看看这里:
在准备语句中使用“like”通配符