gpt4 book ai didi

java - 从 hibernate 中截断/删除

转载 作者:行者123 更新时间:2023-12-02 07:44:26 24 4
gpt4 key购买 nike

我在使用DELETE FROM myEntity时遇到问题

我在数据库中看到所有条目都消失了,但是当我尝试插入以前存在的条目时,它仍然保留着我删除它之前的记录。

代码如下:

static SessionFactory session = NewHibernateUtil.getSessionFactory();

public Session membukaSession(){
return session.openSession();
}

public void clearRencanaPesan(){
Session sess = this.membukaSession();
Query query = sess.createQuery("delete from Rencanapesan");
query.executeUpdate();
}

所以我尝试使用截断

这是代码:

public void clearRencanaPesan(){
Session sess = this.membukaSession();
Query query = sess.createQuery("TRUNCATE Table Rencanapesan");
query.executeUpdate();
}

这个根本不起作用@@,该条目没有被删除。

这是错误

2012 年 6 月 18 日 11:01:54 PM org.hibernate.hql.ast.ErrorCounter 报告错误
严重:第 1:1 行:意外标记:TRUNCATE
线程“AWT-EventQueue-0”中出现异常java.lang.IllegalArgumentException:要遍历的节点不能为空!

请帮助我,我如何截断或删除所有条目。
太感谢了。

最佳答案

您提供的查询没有错误。我的第一个猜测是,使用查询手动删除 session 后, session 会变得不同步。 Session.flush()确保 session 与底层数据库同步。

public void clearRencanaPesan(){
Session sess = this.membukaSession();
Query query = sess.createQuery("delete from Rencanapesan");
query.executeUpdate();
}
// after you've made your changes and before closing the session.
sess.flush();

关于java - 从 hibernate 中截断/删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11086734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com