当前位置:
代码迷
>>
Sql Server
>> 主表与子表通过外键联系后,子表外键定义了cascade ,请教删除主表的操作需要定义成事务吗
详细解决方案
主表与子表通过外键联系后,子表外键定义了cascade ,请教删除主表的操作需要定义成事务吗
热度:
62
发布时间:
2016-04-27 20:33:13.0
主表与子表通过外键联系后,子表外键定义了cascade ,请问删除主表的操作需要定义成事务吗?
还有怎么设置,不能直接删除子表呢?
------解决方案--------------------
设置级联删除后:
(1)外键表数据(子表数据)可直接删除,不会破坏数据库完整性。
(2)主键表数据删除时,自动删除外键表关联的数据,不用你管,DBMS自动删。
设置级联更新后:
(1)外键修改成主键表中不存在的值,且不是空值,则操作失败。
(2)主键修改后,外键表自动修改,由DBMS自动完成,不用你管。
总结:
外键关系(术语为参照完整性)由DBMS自动保持,你就不用操心了。
相关解决方案
Hibernate基础之10:一对多关联的CRUD_@ManyToOne(cascade=(CascadeType.ALL))
drop user test cascade 报错
cascade
浅谈hibernate(cascade,lazy,inverse,fetch)