エラー:演算子が存在しません:タイムゾーンのないタイムスタンプ> =ブール値ヒント:指定された名前と引数の型に一致する演算子がありません

ムニカ

JPAを使用して名前付きクエリを実行しようとしています。クエリは、クエリの基準に基づいてレコードを検索およびプルする必要があります。クエリは、特定の指定された時間(提供された開始日と終了日の間のレコード)とアプリケーションの名前の間のレコードをプルする必要があるという基準です。

Postgresqlで実行すると、クエリは正常に機能します。ただし、JPAを使用すると、クエリの実行中にエラーが発生します

Here is my Query in PostgreSQL :
SELECT  auditLog.busn_sys_id            
        , sourceSystem.busn_sys_full_nm     
        , auditLog.purge_ts                 
        , auditLog.rec_purge_cnt            

FROM    rec_ret.rec_rtn_purge_adt                   auditLog
LEFT    JOIN    gbl_dm.gbl_busn_sys_dm              sourceSystem            on (auditLog.busn_sys_id = sourceSystem.busn_sys_id)

    WHERE   (auditLog.purge_ts BETWEEN '2019-08-19' AND '2019-08-25')
      and  sourceSystem.busn_sys_full_nm like 'PROFILE' 

    order by auditLog.busn_sys_id ;

結果リストを取得するためのJPAの実装は次のとおりです

try{

            Query query = entityManager.createNativeQuery("SELECT auditLog.busn_sys_id, sourceSystem.busn_sys_full_nm, auditLog.purge_ts, auditLog.rec_purge_cnt " +
                    "FROM rec_ret.rec_rtn_purge_adt auditLog " +
                    "LEFT JOIN gbl_dm.gbl_busn_sys_dm sourceSystem on (auditLog.busn_sys_id = sourceSystem.busn_sys_id) " +
                    "WHERE (auditLog.purge_ts BETWEEN auditLog.purge_ts = :requestedFrom AND auditLog.purge_ts = :requestedTo) " +
                    //"WHERE (auditLog.purge_ts BETWEEN requestedFrom = (?) AND requestedTo = (?)) " +
                    "and  sourceSystem.busn_sys_full_nm = :sourceSystem " +
                    "order by auditLog.busn_sys_id ");

            query.setParameter("requestedFrom",auditLogCriteria.getFromDate());
            query.setParameter("requestedTo",auditLogCriteria.getToDate());
            query.setParameter("sourceSystem",auditLogCriteria.getSourceSystem());;

            query.executeUpdate();
            return query.getResultList();


        }catch (Exception e){
            logger.error("Fetching of logs failed with message : " + e.getMessage());
            throw e;
        }

これがエンティティ/モデルクラスコードの実装です

@NotNull (message = "Name of the Source System should be entered")
    private String sourceSystem;

    @NotNull (message = "Specify FromDate to filter records")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss[.SSS]")
    @Convert(converter = LocalDateTimeConverter.class)
    private LocalDateTime fromDate;

    @NotNull (message = "Specify ToDate to filter records")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss[.SSS]")
    @Convert(converter = LocalDateTimeConverter.class)
    private LocalDateTime toDate;
\\ Getters and Setters

ここにエラーがあります:

Hibernate: SELECT auditLog.busn_sys_id, sourceSystem.busn_sys_full_nm, auditLog.purge_ts, auditLog.rec_purge_cnt FROM rec_ret.rec_rtn_purge_adt auditLog LEFT JOIN gbl_dm.gbl_busn_sys_dm sourceSystem on (auditLog.busn_sys_id = sourceSystem.busn_sys_id) WHERE (auditLog.purge_ts BETWEEN auditLog.purge_ts = ? AND auditLog.purge_ts = ?) and  sourceSystem.busn_sys_full_nm = ? order by auditLog.busn_sys_id 

[ERROR] 2019-08-29 10:02:00.558 [http-nio-8080-exec-2] SqlExceptionHelper - ERROR: operator does not exist: timestamp without time zone >= boolean
  Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts.
  Position: 267
javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute statement
    at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154)
    at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181)
    at org.hibernate.query.internal.AbstractProducedQuery.executeUpdate(AbstractProducedQuery.java:1593)

したがって、結果は、JSONリクエストへの応答として返される必要がある基準に一致するすべてのレコードである必要があります

ジェレミー

JPAクエリのこの部分は間違っているように見えます。

BETWEEN auditLog.purge_ts = :requestedFrom AND auditLog.purge_ts = :requestedTo

私はそれがすべきだと思います:

BETWEEN :requestedFrom AND :requestedTo

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ