亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

“立即更新”,Oracle,springframework,QuerySyntaxException

“立即更新”,Oracle,springframework,QuerySyntaxException

郎朗坤 2021-12-18 15:31:18
我正在使用實現從org.springframework.data.repository.CrudRepository和擴展的接口org.springframework.data.jpa.repository.JpaSpecificationExecutor我有一個org.springframework.data.jpa.repository.Query帶有參數的查詢的問題org.springframework.data.repository.query.Param我有這個查詢..@Query(value = " SELECT c FROM Ctype c WHERE c.code = :code"        + " FOR UPDATE nowait ")Ctype findOneByCodeNoWait(        @Param("code") String code);我有這個錯誤:Caused by: java.lang.IllegalArgumentException: Validation failed for query for method public abstract org.company.persistence.entity.Ctype org.company.persist.repository.CtypeRepository.findOneByCodeNoWait(java.lang.String)!Caused by: java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: FOR near line 1, column 111 [ SELECT c FROM org.company.persistence.entity.Ctype c WHERE c.code = :code FOR UPDATE nowait ]Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: FOR near line 1, column 111 [ SELECT c FROM org.company.persistence.entity.Ctype c WHERE c.code = :code FOR UPDATE nowait ]\"}}"我正在檢查另一個帖子,但他們使用EntityManager...這個怎么解決?
查看完整描述

1 回答

?
holdtom

TA貢獻1805條經驗 獲得超10個贊

試試這個方法:


@Lock(LockModeType.PESSIMISTIC_READ)

 @QueryHints(@QueryHint(name = "javax.persistence.lock.timeout",value = "0"))

 @Query(value = " SELECT c FROM Ctype c WHERE c.code = :code")


我已經用我正在進行的項目和這段代碼對此進行了測試:


@Lock(LockModeType.PESSIMISTIC_READ)

@QueryHints(@QueryHint(name = "javax.persistence.lock.timeout",value = "0"))

@Query("select t from Event t left join fetch t.details ")

List<Event> findAllWithDetails();

`


生成 sql 如下:


SELECT event0_.event_id ...

FROM   EVENTS event0_ 

       left outer join event_details details1_ 

                    ON event0_.event_id = details1_.event_id 

FOR UPDATE NOWAIT


查看完整回答
反對 回復 2021-12-18
  • 1 回答
  • 0 關注
  • 174 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號