私は条件照会を実際には行っていません。ここではモデル:Hibernate Criteria CLOB上のlike like演算子(Postgres 8.4)
@Entity
public class Flaw extends BaseEntity implements Serializable {
...
@Lob
@Basic(fetch=FetchType.LAZY)
private String text;
...
このクエリは、(ログから)休止状態で実行されようとしている:
Hibernate:
select
...
flaw0_.text as col_7_0_,
...
from
Flaw flaw0_,
where
...
and (
flaw0_.text like ?
)
order by
flaw0_.text desc
しかし、その後、私は、次のスタックトレースを取得:
オーデルの施設
3171 [main] WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 0, SQLState: 42883
3171 [main] ERROR org.hibernate.util.JDBCExceptionReporter - ERROR: operator does not exist: text ~~ bigint
3198 [main] INFO org.hibernate.impl.SessionFactoryImpl - closing
CLOB上の同様の演算子ではうまく動作しません。これはHibernateまたはPostgresの問題ですか?または、このタイプの問合せはCLOBでは不可能ですか?
私が使用しています:
- は3.6.3
- のPostgreSQL 8.4.8を休止
- PostgreSQLのSSL
任意のアイデア(603ビルド)で8.3 JDBC3?
更新: 私はいくつかのさらなる調査んでした:
- は、上記の注釈は、私はSQLクエリを実行した場合、それはプリントアウト休止正しく
text
Postgresのタイプ - を作成し、それが動作します。
BR
Rene-
私はこれは問題ではないと思う、私の更新された記事を参照してください。 – reen
この同じトピックの興味深いスレッドは次のとおりです。http://groups.google.com/group/h2-database/browse_thread/thread/d72435d1382c39c4ユーザは、Hibernateのコードを修正して動作させる必要がありました。アップデートがメインのHibernateトランクに入ったかどうかはわかりません。 – atrain
ご協力ありがとうございます。私は最終的にコードを変更しないで解決策を見つけました。私の答えを見てください。 – reen