2011-03-16 77 views
0

如何运行此查询如何执行更新Hibernate查询

update User user 
set user.status = 1 
where user.status = 0 
    and user.uiid = 12 or user.uiid =13 or user.uiid =14 or user.uiid =15 

getHibernateTemplate()

我的意思是'getHibernateTemplate()。我的查询......

请给我的例子..

感谢

回答

4

面向对象的方法:

foreach(int id in ids) 
{ 
    User user = session.get<User>(id); 
    user.status = 1; 
} 

HQL的方式:

session 
    .createQuery("update User set status = :status where id in (:ids)"); 
    .setInt("status", status) 
    .setParameterList("ids", ids) 
    .executeUpdate(); 

这取决于在整个交易中你在做什么来说哪种方式更好。