【发布时间】:2016-02-21 08:41:27
【问题描述】:
我正在使用 oracle 12c 和 Hibernate 4.2.21,我想删除 telationship OnetoMany 中的两个表。
我的方法是从“表”中删除:
public void deleteAllRecords() {
Session session = HibernateSessionFactory.getSessionFactory()
.openSession();
try {
session.beginTransaction();
// String hql = String.format("TRUNCATE table MapField");
// Query query = session.createQuery(hql);
// query.executeUpdate();
Query q1 = session.createQuery ("DELETE FROM MapField");
int deleted = q1.executeUpdate ();
Query q2 = session.createQuery ("DELETE FROM MapRecord");
int deleted = q2.executeUpdate ();
} catch (Exception e) {
logger.error("Error :" + e);
session.getTransaction().rollback();
} finally {
session.close();
}
当我执行这个时,我没有收到 none Error ,只有这个:
INFO [stdout] (ServerService Thread Pool -- 60) Hibernate: delete from MapField
但是当我去检查 Db 中的表时,行仍然在这里..
【问题讨论】:
标签: java sql hibernate oracle11g oracle12c