更新数据时出错:子表包含相关记录,不能删除或改变该记录
有a和b2个表,a是b的父表,当更新a表时显示错误信息:由于表'b'中了包含相关记录,不能删除或改变该记录。
这2个表是有关系的,级联更新我已经去掉了,但还是不行。
代码是直接用dataset.update(datatable)方法的。
怎么办?
------解决方案--------------------学习之中,帮顶一下
------解决方案--------------------把关系删除,或者打开级联删除问题可解决
但是楼主先要搞清楚,你到底是否希望用户可以随便删除a中的纪录
------解决方案--------------------楼主把你两表之间的"级联更新"、“级联删除”选中,即可去掉该错误信息
这样有个风险就是,你删除或修改了A表里的记录,亦会影响B子表里的记录。
------解决方案--------------------b表的外键在中
为了不在数据库里留下脏数据,建议楼主还是写个触发器,把b表里和a相关的数据同时删除。
------解决方案--------------------级联删除 和 级联更新 啊
------解决方案--------------------支持4楼 的建议, 另外 如果用的是sql 建议lz 在更新或删除的存储过程里加上 事物处理(事物回滚)