0
我有一個實體,並與接口JpaRepository<MyEntity, Long>
的DAO。使用EclipseLink。春數據JPA - 使用異常時的findAll與MySQL
我使用的是從DAO下面的方法:
Iterable<MyEntity> findAll(Iterable<Long> ids);
這樣:
List<Long> listOfIds = Arrays.asList(new Long[] {1,2,3});
Iterable<MyEntity> entities = dao.findAll(listOfIds);
我已經得到了MySQL的例外:
java.sql.SQLException: Operand should contain 1 column(s)
的SQL在數據庫中執行的查詢具有以下語法:
SELECT id, creation_date, column1, column2 FROM my_entity WHERE (id IN ((1,2,3)))
的問題是在過去的括號 - 有太多的人。工作查詢是:
SELECT id, creation_date, column1, column2 FROM my_entity WHERE (id IN (1,2,3))
爲什麼Spring Data會添加這些不必要的大括號?任何方式來解決它?
請張貼'MyEntity'類代碼+ listOfIds'的'在編輯'listOfIds' – alfasin
提供的示例聲明的聲明。該實體是用'@ Entity'註解的POJO。 – fracz
你使用哪個OR映射器? –