使用hibernate更新数据库字段值的问题

yangxiao_jiang 2004-11-12 04:07:37
我用以下 代码
T_first ss=(T_first)session.load(T_first.class,new Integer(2));
ss.setName("geezer");
ss.setSex("ni");
session.flush();
session.close();
怎么不能更新数据库中字段的值。
环境配置没有问题,因为插入正常。我用的数据库是sql,主见是自动增长的。
删除也不能用
int a = session.delete("from T_first ");
System.out.println(a);
session.flush();
session.close();
为什么?
...全文
337 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangxiao_jiang 2004-11-15
  • 打赏
  • 举报
回复
yohar(砍野菜的武當劍)
tran是什么,在什么地方加?
yohar 2004-11-15
  • 打赏
  • 举报
回复
hibernate进行数据修改和删除时是需要session.beginTransaction();然后再tran.commit();的,否则hibernate不会把更新的数据提交到数据库
huang19820512 2004-11-15
  • 打赏
  • 举报
回复
更新你不用saveorupdate啊?
int a = session.delete("from T_first ");是这样用啊???晕
你看看文档把,上面又介绍的
yangxiao_jiang 2004-11-15
  • 打赏
  • 举报
回复
怎么没有人回答?没有人会?
yangxiao_jiang 2004-11-14
  • 打赏
  • 举报
回复
pbMaster(编程无境界)
应该不用,因为hibernate直接就把修改的session保存了。
joincsdn 2004-11-13
  • 打赏
  • 举报
回复
T_first ss=(T_first)session.load(T_first.class,new Integer(2));
ss.setName("geezer");
ss.setSex("ni");
session.update(ss);//更新需要加上这条语句才行
session.flush();
session.close();
pbMaster 2004-11-13
  • 打赏
  • 举报
回复
是不是要显式COMMIT?
yangxiao_jiang 2004-11-13
  • 打赏
  • 举报
回复
ymm(紫外线)
我就是按照你写的那样不行,显示的sql如下:
Hibernate: select t_first0_.id as id, t_first0_.name as name, t_first0_.sex as sex from t_first t_first0_ where (t_first0_.id=1 )
1
Hibernate: delete from t_first where id=?
但是还是不能在数据库中删除数据。

joincsdn(云)
我按照你说的也不行,加上session.update(ss);或者session.saveOrUpdate(ss)(我以前加的)都不行
显示的sql是
Hibernate: select t_first0_.id as id0_, t_first0_.name as name0_, t_first0_.sex as sex0_ from t_first t_first0_ where t_first0_.id=?
Hibernate: update t_first set name=?, sex=? where id=?
应该是找不到传进去的值,这是为什么?
ymm 2004-11-12
  • 打赏
  • 举报
回复
增加我是不知道有什么办法,可是你的批量删除不应当这样吧
删除应当是session.delete("from T_first a where a.id=1");
System.out.println(a);
session.flush();
session.close();
这样删除应当没有问题
zengguowen1984 2004-11-12
  • 打赏
  • 举报
回复
把session.close();去掉试下

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧