我想將一條記錄保存到mysql 5.1 db。當我使用實體manager.persist()或合併()方法,那麼它甚至沒有保存記錄到數據庫,當我嘗試使用本機插入語句是這樣的,它拋出異常JPA查詢拋出異常
Query query = entityManager.createNativeQuery("insert into Employee(firstName,lastName,phone,email) values(?,?,?,?);");
query.setParameter(1, employee.getFirstName());
query.setParameter(2, employee.getLastName());
query.setParameter(3, employee.getPhone());
query.setParameter(4, employee.getEmail());
異常從拋出以上查詢是
org.springframework.orm.jpa.JpaSystemException: org.hibernate.exception.GenericJDBCException: could not execute native bulk manipulation query; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute native bulk manipulation query
請幫幫我!!!!
感謝
我們可以看到更多的堆棧跟蹤嗎?我假設你在查詢上調用executeUpdate。如果您不僅僅保存員工實例,爲什麼還要使用jpa? JPA的全部內容是不必做你正在做的事情。 – hvgotcodes 2010-12-15 20:27:16
那我該如何保存這些數據。我想使用entityManager.persist()或merge(),但它不保存數據。請您詳細說明如何在沒有JPA的情況下保存數據? – user509755 2010-12-15 20:30:07
除了Bozho對完整異常和堆棧跟蹤的請求之外,如果你可以發佈你的Employee類的代碼,尤其是分配ID的方式,equals()和hashcode()的實現方式,以及您定義的唯一約束(如果有的話)。 – Mopper 2010-12-16 10:07:42