DB2 参照约束的删除规则(delete rule)
DB2 参照约束的 删除规则(delete rule);为了能在删除父表的记录,同时能达到删除子表的相关记录的目的,使用的办法:
- 选择 Quest Central for DB2 工具,连接相应的数据库(略);
- 选择相应的 Table,右击选择修改(Alter),如图:
- 对子表的外部键进行修改,选择 Keys/Constraints,选择外键(就是 Type 为 Foreign),如图:
- 在右侧选择编辑按钮 (Edit), 弹出一个窗口,如图:
- 在弹出窗口的下方你可以找到相关的约束类型 (如图),4 种类型(sql 表示 ON DELETE 『SET NULL』(中括号里为 4 种类型的任意一种)),选择好类型后选择 OK 确定:
》NoAction 表示删除父表记录对子表(我们修改的当前表)的关联记录无影响;
》Restrict delete 表示删除父表记录时如果存在子表的关联记录,将被回滚,并且报错;
》Cascade to dependent 表示在删除父表的同时删除子表的记录;
》Set to Null in dependent 表示在删除父表的同时,子表外键列被设置为 null; - 在窗体的下方,按 Build Script 按钮,生成 SQL 脚本(如图):
- 执行 Script,如图: