我有了一个CLOB属性的实体:CLOB和CriteriaQuery中
public class EntityS {
...
@Lob
private String description;
}
为了取回我们使用CriteriaQuery中,我们需要的结果是唯一的DB某些实体来说,所以我们做的:
query.where(builder.and(predicates.toArray(new Predicate[predicates.size()]))).distinct(true).orderBy(builder.asc(root.<Long> get(EntityS_.id)));
如果我们这样做,我们得到以下错误:
ORA-00932: inconsistent datatypes: expected - got CLOB
我知道那是因为你不能使用DIST当选择一个CLOB时。但我们需要CLOB。使用CriteriaQuery和Predicates等有没有解决这个问题的方法?
我们正在使用一个丑陋的解决方法来摆脱.unique(true),然后过滤结果,但这是废话。我们使用它只是为了能够继续开发应用程序,但我们需要更好的解决方案,而且我似乎找不到一个...
也许我错过了一些东西,但我如何使用CriteriaQuery做到这一点? – diminuta