44问答网
所有问题
为什么hibernate中,hql语句delete之后还要执行query.executeUpdate()
如题所述
举报该问题
其他回答
第1个回答 2014-06-10
正常情况下是不需要的,如果你的delete之后没有删除效果,先flush()下,再检查你的事务配置,是不是对delete没有加上事务。
追问
我执行了query.executeUpdate()后,hql语句delete才有效,请问是怎么回事?
追答
检查事务的配置
追问
没有写事物
第2个回答 2014-06-10
这个是jdbc里面的一个方法
主要功能是执行 update和insert、delete等sql语句
delete只是sql语句,这个是执行sql语句,这样数据才能保存到数据库中
本回答被网友采纳
相似回答
Hibernate
基础详细分析
答:
Hibernate
还支持大批量删除 应用程序对数据库
执行
一个
DELETE
HQL语句
session creat
Query(
delete
from user )
executeUpdate()
; 这非常适合同时删除多个对象 因为不需要仅为了删除对象而将每个对象加进内存 用这种方法不会导致级联操作 Hibernate基础——级联 在默认情况下 Hibernate不进行任何级联操作 在...
hibernate
优化方案
答:
需要多次
执行
update/
delete
语句 而每次执行只能处理一条数据 以上两个问题的出现会严重影响系统的性能 因此 在
Hibernate 中
引入了用于批量更新或者删除数据的
HQL语句
这样 开发人员就可以一次更新或者删除多条记录 而不用每次都一个一个地修改或者删除记录了 如果要删除所有的User对象(也就是User对象所对应表中的记录...
hibernate的
三种查询方式
答:
HQL是
Hibernate
Query
Language的缩写,提供更加丰富灵活、更为强大的查询能力;HQL接近SQL`语句查询语法。 完整
的HQL语句
形式如下: select | update |
delete
… from … where … group by … having … order by … asc|desc 其中的update、delete为Hibernate3中所新添加的功能,可见HQL查询非常类似于标准SQL查询。
Hibernate的批量处理
答:
Hibernate 中
对于批量更新操作 Hibernate是将符合要求的数据查出来 然后再做更新操作 批量删除也是这样 先把符合条件的数据查出来 然后再做删除操作 这样有两个大缺点 () 占用大量的内存 () 处理海量数据的时候
执行
update/
delete语句
就是海量了 而且一条update/delete语句只能操作一个对象 这样频繁的操作数据库 ...
大家正在搜
相关问题
Hibernate中execute,executeQuery...
hibernate 中 session.createSQLQ...
hibernate HQL 更新/删除问题
hibernate createSQLQuery(sql)....
如何在hibernate2中执行这样一条UPDATE语句
hibernate中SQLQuery的executeUpda...
hibernate createSQLQuery("").e...
hibernate中进行update时报错could not...