急求:hibernate update语句!! 本帖最后由 javamoon 于 2010-06-11 11:07:49 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你只是创建了query语句,而没有执行。应该是session.createQuery(hql2).executeUpdate(); hibernate 是这样更新表的么?你那种应该是createSQLQuery()hibernate 是将表当成对象操作的 你要修改某张表 要取出他的对象然后修改对象的 你这是直接写的sql语句的话 就应该是createSQLQuery() String hql = "update MainDitch set mainInterval = "+mainTime+" where ditchNo = '"+ditchNo+"'";改成String hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'"; HQL改成:String hql = "update MainDitch set mainInterval = "+mainTime+" where ditchNo = "+ditchNo;这里MainDitch是对象名,mainInterval ditchNo是其属性名 String hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'";mainTime这边可能有问题,你只是创建了query语句,而没有执行。应该是 session.createQuery(hql2).executeUpdate(); String hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'";session.createQuery(hql2).executeUpdate(); hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'"; 你第一次更新锁定数据库了先对数据库commit一下 String hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'";session.createQuery(hql2).executeUpdate(); 你写的不是hql语句呀。要是用Hibernate,直接用session.update多好啊。 hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'"; 楼主你这样何必用hibernate列?为啥不直接用SQL? 违背了用hibernate的初衷. OO思想那去了?怎么体现 ?? 不是必要情况不要用H直接执行这种语句。直接保存用 save更新用 update LZ的写法可以更新 直接这样就OK了 LZ的写法可以更新 直接这样就OK了 类加载器找字节码文件 根据姓名查询用户信息的一段代码有什么问题 Servlet生命周期 在tomcatl配置C3P0连接池出问题了? 98上职高就开始学习编程学了9年了!能学的都学了!可我没工作经验! 请问java环境哪里下载呀 javascript 怎样实现象Word中编辑菜单的“全选”功能? 在websphere上部署好的.ear文件,可以在jboss中运行,为什么不能在websphere上运行? 求助各位大神我按源码写的坦克大战游戏怎么打成jar包后不显子弹还可以穿墙啊 如何在JSP页面包含一个由action返回的JSP页面? 怎么使用ireport分组。。
session.createQuery(hql2).executeUpdate();
你那种应该是createSQLQuery()
hibernate 是将表当成对象操作的 你要修改某张表 要取出他的对象
然后修改对象的 你这是直接写的sql语句的话 就应该是createSQLQuery()
String hql = "update MainDitch set mainInterval = '"+mainTime+"' where ditchNo = '"+ditchNo+"'";
String hql = "update MainDitch set mainInterval = "+mainTime+" where ditchNo = "+ditchNo;
这里MainDitch是对象名,mainInterval ditchNo是其属性名
mainTime这边可能有问题,你只是创建了query语句,而没有执行。应该是
session.createQuery(hql2).executeUpdate();
session.createQuery(hql2).executeUpdate();
先对数据库commit一下
session.createQuery(hql2).executeUpdate();
违背了用hibernate的初衷.
OO思想那去了?怎么体现 ??
更新用 update
LZ的写法可以更新 直接这样就OK了
LZ的写法可以更新 直接这样就OK了