MySQL支持外鍵的存儲引擎只有InnoDB、。在創建外鍵的時候,可以指定在刪除、更新父表時,對子表進行的相應操作,包括RESTRICT、NO ACTION、SET NULL和CASCADE。
其中RESTRICT和NO ACTION相同,是指在子表有關聯記錄的情況下父表不能更新;
CASCADE表示父表在更新或者刪除時,更新或者刪除子表對應記錄;
SET NULL則是表示父表在更新或者刪除的時候,子表的對應字段被SET NULL。
如:
KEY `FK_ID` (`news_type`),
CONSTRAINT `FK_ID` FOREIGN KEY (`news_type`) REFERENCES `new_category` (`category_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;