关于hibernate HQL不能使用insert语句
2012-12-11 10:35
141 查看
使用HQL语句来完成插入操作是不能实现的,不管你使用insert into....values...还是insert into.....select.....都不行
原因:因为Hibernate的HQL语言是用于面向对象实现查询功能的,然而在插入操作中是不会牵涉任何查询动作的,所以HQL不能用于insert语句的插入操作,而select、update、delete语句都可以有可能的查询实现,比如:
select语句时标准的查询,这个就不用再说了
update语句:update 对象名 set.....where......
delete语句:delete from 对象名 where .....
看到了没有,update与delete牵涉到where的查询筛选过程,这个过程是需要采用HQL来实现的,然而insert永远牵涉不到查询筛选过程,所以Hibernate没有对插入做insert实现
原因:因为Hibernate的HQL语言是用于面向对象实现查询功能的,然而在插入操作中是不会牵涉任何查询动作的,所以HQL不能用于insert语句的插入操作,而select、update、delete语句都可以有可能的查询实现,比如:
select语句时标准的查询,这个就不用再说了
update语句:update 对象名 set.....where......
delete语句:delete from 对象名 where .....
看到了没有,update与delete牵涉到where的查询筛选过程,这个过程是需要采用HQL来实现的,然而insert永远牵涉不到查询筛选过程,所以Hibernate没有对插入做insert实现
相关文章推荐
- hibernate的hql不能使用insert语句
- hibernate HQL中不能使用insert语句
- 关于使用Hibernate 的HQL 语句进行增删改查
- hibernate里使用hql语句处理多表查询
- hibernate使用带有sum()的hql语句出错的问题
- Java Hibernate中使用HQL语句进行数据库查询的要点解析
- hibernate使用hql执行查询操作时,多出update语句
- hibernate使用createQuery(hql)语句仅查询部分字段,应如何获得数据
- 关于spring整合hibernate使用update无异常但没有效果(不输出sql语句)
- hibernate hql语句in的使用和占位符
- hibernate使用查询语句hql
- hibernate 的hql查询语句中使用fetch的注意点
- Eclipse使用hibernate进行HQL语句查询时,速度慢的原因之一
- Hibernate之关于HQL语句参数的绑定
- 关于加快INSERT语句执行速度和 HINT /*+ append*/及nologging的使用
- Hibernate查询时,使用HQL和SQL的区别(SUM语句)
- 如何在hibernate+mySQL中使用HQL的cast语句
- HQL语句不能使用*
- Hibernate中使用自定义insert,update,delete语句需要注意的问题
- Hibernate(3)-使用HQL语句进行数据查询