您的位置:首页 > 移动开发 > Objective-C

deleted object would be re-saved by cascade 问题解决方法

2014-06-23 15:12 302 查看
这个问题出现在要删除关系的一头时,如,要删除一个已经和Student有关系的Teacher,

当tx.commit()时,才会抛出这个异常。这时候一个在关系另外一头的Student对象中的Set或者是List中把

这个Teacher对象显示的remve掉,再Session.delete(这个Teacher)。这个是为了防止在Student端有cascade时把这个

Teacher对象再存回DB。所以,这个异常的只有在Student的关系定义中有cascade="..."

,而且没有像上面说的显示的解除关系时候才会出现。所以防止出现这个异常的的方法就是

1:在Student端不用cascade

2:或者是用了cascade的话,就显示的删除对象中的关系

3:在Teacher端用cascade
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐