gpt4 book ai didi

java - jpa:在 Lob 字段上点赞

转载 作者:行者123 更新时间:2023-11-29 13:50:25 25 4
gpt4 key购买 nike

我有一个带有标记为 Lob 的字符串字段的实体:

@Lob
public String getJson() {
return json;
}

我需要使用 jpql 在此字段上执行类似条件的查询。我不能使用 native 查询,因为代码必须同时兼容 Oracle 和 Postgresql。我正在使用 hibernate 作为 jpa 实现。该查询不返回任何内容,即使它被正确翻译(我对 oracle 的 v$_sqlarea 进行了查询以查看它及其参数)。在 squirrel 上执行翻译后的查询效果很好。

我是否试图在 lob 字段上执行错误/不允许的操作?有没有人做同样的事情并取得成功?

最佳答案

@Lob 注释字段上使用 LIKE 谓词运算符的支持可能会成功或失败,具体取决于您使用的方言。这是因为它取决于用于将 CLOB 数据映射到数据库列的数据类型。

例如,SQL Server 方言可能会将带注释的 @Lob 字段映射到 TEXT 数据类型,虽然已弃用,但确实允许LIKE 运算符。但是另一种方言可能将该字段映射到数据库不允许使用 LIKE 运算符的数据类型。

其他方言可能允许对CLOB 列进行类似LIKE 的操作;然而,它们是通过特定于数据库的特殊功能来实现的。在这些情况下,如果该要求适用于您的方言,则您必须使用这些功能来支持您的搜索。

关于java - jpa:在 Lob 字段上点赞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42063517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com