HQL仅用于查询数据,不支持insert,update和delete语句,正确吗?

2024-11-26 08:51:42
推荐回答(3个)
回答1:

这个是可以的,直接通过insert into、update、delete进行操作即可:
插入操作:
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.createQuery("insert into UserInfo(username) values('zhangsan')")
删除操作:
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.createQuery("delete Classes as a where a.orderTimelike " '%"+orderTime+"%'");
更新操作:
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.createQuery("update Classes set id =5 where a.orderTimelike " '%"+orderTime+"%'");

回答2:

完整的HQL语句形式如下: Select/update/delete…… from …… where …… group by …… having …… order by …… asc/desc 其中的update/delete为Hibernate3中所新添加的功能,可见HQL查询非常类似于标准SQL查询。

回答3:

错 可以更新