首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

问个hibernate sqlquery 的有关问题

2013-09-05 
问个hibernate sqlquery 的问题String ids 1,2,3StringBuffer sql new StringBuffer(delete from

问个hibernate sqlquery 的问题


String ids = "1,2,3";
StringBuffer sql = new StringBuffer("delete from t_client where id in (:clientids)");
SQLQuery sqlQuery = getSession().createSQLQuery(sql.toString());
sqlQuery.setParameter("clientids", ids);
int result = sqlQuery.executeUpdate();


现在的问题是我如果sql中直接delete from t_client where id in ("+ids+")这样写就能删除3条。
但是我用setParameter设置参数只能删除1条。求原因。。。。
[解决办法]
你这样写应该一条都删不了吧。
setParameter("clientids", ids);
把sql变成这样了。
delete from t_client where id in ('1,2,3');

热点排行