[ON UPDATE {RESTRICT |CASCADE| SETNULL|NOACTION | SET DEFAULT}] 其中,ON DELETE 和 ON UPDATE 表示事件触发限制,各参数意义如下: | 参数 | 意义 | | RESTRICT | 限制外表中的外键改动(默认值,也是最安全的设置) | | CASCADE | 跟随外键改动 | | SET NULL | 设为n
[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...) REFERENCES tbl_name (index_col_name, ...) [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}] [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}] 该语法可以在 CREATE TABLE 和 ALTE...
如果子表试图创建一个在父表中不存在的外键值,InnoDB会拒绝任何INSERT或UPDATE操作。如果父表试图UPDATE或者DELETE任何子 表中存在或匹配的外键值,最终动作取决于外键约束定义中的ON UPDATE和ON DELETE选项。InnoDB支持5种不同的动作,如果没有指定ON DELETE或者ON UPDATE,默认的动作为RESTRICT也就是我们上面的例子 casca...
在数据库设计中,外键(Foreign Key)是用于维护数据完整性的关键概念。本文将探讨在管理外键时,如何通过五种方式确保数据一致性。这五种方式包括:级联(CASCADE)、设置为NULL(SET NULL)、无动作(NO ACTION)、限制(RESTRICT)以及设置默认值(SET DEFAULT)。级联(CASCADE)是一种设计,当从父表中...
三,创建foreign key的语法规则 [CONSTRAINTsymbol] FOREIGN KEY [id] (index_col_name, ...) REFERENCEStbl_name(index_col_name, ...) [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION}] [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION}] ...
ON UPDATE CASCADE:当更新父表中的记录时,自动更新子表中相关字段。 ON UPDATE RESTRICT:当更新父表中的记录时,如果子表中有相关记录,则拒绝更新。 这些配置选项可以根据具体业务需求灵活选择,以确保数据的一致性和完整性。例如,在订单管理系统中,如果删除一个客户,通常会选择ON DELETE CASCADE,以确保所有相关订单也...
ALTER TABLE 订单表 ADD CONSTRAINT fk_user_id FOREIGN KEY (用户ID) REFERENCES 用户表(ID) ON DELETE CASCADE; 此处ON DELETE CASCADE表示主表记录删除时,子表关联记录同步删除。 事件触发机制通过ON DELETE和ON UPDATE定义级联行为。可选参数包括: RESTRICT:默认值,阻止主表删除或更新...
三,创建foreign key的语法规则 [CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...) REFERENCES tbl_name (index_col_name, ...) [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION}] [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION}] ...
指定约束名称可以方便维护,删除约束可以用 ALTER TABLE tbl_name DROP FOREIGN KEY symbol语句快速删掉。ON DELETE、ON UPDATE表示事件触发限制,可设参数:RESTRICT(限制外表中的外键改动)CASCADE(跟随外键改动)SET NULL(设空值)SET DEFAULT(设默认值)NO ACTION(无动作,默认的)
[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, …) REFERENCES tbl_name (index_col_name, …) [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}] [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}] ...