我想在Hibernate Criteria中編寫下面的InsertInto查詢。 任何建議 .. 感謝您的幫助如何在hibernate條件中編寫insertinto命令
sql = "insert into selectedresumes values('" + companyId + "','"
+ resumeId + "','" + resumeStatusId + "','" + jobId + "')";
我想在Hibernate Criteria中編寫下面的InsertInto查詢。 任何建議 .. 感謝您的幫助如何在hibernate條件中編寫insertinto命令
sql = "insert into selectedresumes values('" + companyId + "','"
+ resumeId + "','" + resumeStatusId + "','" + jobId + "')";
不幸的是,你不能做到這一點。
根據Hibernate文檔
http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#batch-direct
只有INSERT INTO ...支持SELECT ... 形式;不是INSERT INTO ... VALUES ...表單。
所以,你只需要創建對象和使用Hibernate保存它,它看起來應該像
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Resume selectedresumes = new Resume();
//set all resume values
session.save(selectedresumes);
tx.commit();
session.close();
你不應該用SQL或MySQL數據庫表與POJO類查詢的Fileds映射。
像下面這樣僱員pojo對象有兩個字段empNo,empName插入如下所示。 Query query = session.createQuery(「insert into Employee(empNo,empName)」);
int result = query.executeUpdate();
參考這個例子
http://howtodoinjava.com/hibernate/hibernate-insert-query-tutorial/
感謝您的幫助,我這樣做同樣的事情,但在這行tx.commit();它拋出異常org.hibernate.exception.SQLGrammarException:無法執行JDBC批量更新任何想法是什麼原因。謝謝 – junaidp 2011-06-05 17:45:37
請發佈您的代碼和Hibernate配置。 – 2011-06-05 20:56:59