hibernate执行SQL语句删除数据

例如要执行此删除:Stringsql="deleteT_FfInfowherereportId="+id;hibernate中怎么删除?Stringsql="delete... 例如要执行此删除: String sql="delete T_FfInfo where reportId="+id;
hibernate中怎么删除?
String sql="delete T_FfInfo where reportId="+id;

int result ;

SQLQuery query = this.getSession().createSQLQuery(sql);

这样写为什么数据没删除,请教
展开
 我来答
咸蛋超人程序猿
推荐于2017-08-24
知道答主
回答量:8
采纳率:0%
帮助的人:7132
展开全部

你没有写executeUpdate();  

应该是:

String sql="delete T_FfInfo where reportId="+id;

int result ;    

SQLQuery query = this.getSession().createSQLQuery(sql).executeUpdate(); 

cylazhm
2017-05-17 · TA获得超过195个赞
知道小有建树答主
回答量:136
采纳率:0%
帮助的人:76.6万
展开全部
明显的syntax error啊, "delete from T_FInfo where reportId="+id。另外,居然拼凑字符串执行sql,明显找死啊,最简单的sql注入都防不了啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1015768572
2014-06-09 · TA获得超过223个赞
知道小有建树答主
回答量:345
采纳率:66%
帮助的人:156万
展开全部
createQuery(sql),这个是session的方法,开启事物Transaction tx = s.beginTransaction();注意要commit提交
追问
S是什么?能详细写一下吗?谢谢
追答
就是hibernate Session
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
azhqgu
2014-06-09 · TA获得超过323个赞
知道小有建树答主
回答量:563
采纳率:75%
帮助的人:202万
展开全部
你这个createSQLQuery是查询的执行方法。执行删除或者更新的应该是excuteUpdate方法吧,怎么拼的忘记了,你可以查下
更多追问追答
追问
String sql="delete T_FfInfo where reportId="+id;

int result ;

SQLQuery query = getSession().createSQLQuery(sql);
result = query.executeUpdate();

我是这样写的,可是没删除,请教
追答
session.beginTransaction.commit();要提交的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式