大家好,一直潜水,今天发个贴,问个问题。hibernate many to one删除问题。老师:学生是1:m,增查都已实现,现在我想,删除一个学生不会删除老师,而且删除老师让关联学生的fk为空。用的oracle和myeclipse。谢谢大家。
解决方案 »
- wabacus-查询后置动作的问题
- 导入excel数据时怎样处理日期格式?
- JOB CHANCE
- Struts标签<html:file>的问题
- 在spring中使用ibatis与oracle数据库映射时出现的问题!求解!
- 大家来解惑!!!
- 一个奇怪问题,请高手帮忙.
- applet怎么取到系统时间
- 为什么把.class文件删除了,jsp还能正常运行?
- 各位大神!j2ee项目,代码在本地可以运行,但放到测试环境中就不能运行,同样,测试环境的代码放在本地也不能运行,报下面的错误,还请各位帮忙指点下,非常感谢!急!
- 一个查询条件,求助!!!
- “IE:download”这个标签,在其他非IE浏览器里有没有类似的功能标签啊?
删除one是,可以不删除many(设置为null,取决于数据库的设计)
oracle 没有自增吧? 有序列
可以直接对学生进行删除,不会影响到老师的,因为老师是主表
2删除老师让关联学生的fk为空
不可以直接对老师进行删除,因为两张表有主外键关联,需要先解除和老师有关联的学生记录,按照楼主的意思,
并不能够删除学生,即是update操作,所以可以直接用query接口,hql类似为update Student set techerId = null where techerId = :techerId ,然后执行executeUpdate方法来更新学生表,这样设置外键为null后即解除了主外键关联关系,然后在删除老师就OK了
而且 如果是 onetomany ,删除一的一方会级联删除 多的一方也只仅仅在 配置级联cascade = "all或者delete"才会有效 ,没有 楼上这么麻烦吧