現在有一個圖書表,記載了圖書信息,圖書id為nh_id,
要求有一個圖書章節表,按章節記載圖書的具體信息,外鍵nh_id對應圖書表的nh_id,同時要求如果圖書表id改變,對應的章節表的外鍵也改變,如果圖書刪除,該書對應的章節也一並刪除
添加外鍵約束為
CONSTRAINT `nh_chapter-nh` FOREIGN KEY (`nh_id`) REFERENCES `nh` (`nh_id`) ON DELETE CASCADE ON UPDATE CASCADE
其中
CONSTRAINT `nh_chapter-nh` FOREIGN KEY (`nh_id`) REFERENCES `nh` (`nh_id`)
為建立外鍵
ON DELETE CASCADE ON UPDATE CASCADE
為一並刪除或更新
完整參考
CREATE TABLE `nh` ( `nh_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '小說編號', `type` tinyint(2) unsigned NOT NULL COMMENT '類型', `sex` tinyint(1) unsigned NOT NULL COMMENT '性別[1男2女]', `name` varchar(100) NOT NULL COMMENT '名稱', `intro` varchar(1500) NOT NULL COMMENT '簡介', `words` varchar(10) NOT NULL COMMENT '字數', `author` varchar(30) NOT NULL COMMENT '作者',PRIMARY KEY (`nh_id`) ) ENGINE=InnoDB AUTO_INCREMENT=10613 DEFAULT CHARSET=utf8mb4 COMMENT='小說表'; CREATE TABLE `nh_chapter` ( `chapter_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '章節編號', `index` int(10) unsigned NOT NULL COMMENT '章節編號', `nh_id` int(10) unsigned NOT NULL COMMENT '小說編號', `title` varchar(100) NOT NULL COMMENT '標題', `total` int(10) unsigned NOT NULL COMMENT '章節字數', `content` mediumtext NOT NULL COMMENT '章節內容', PRIMARY KEY (`chapter_id`),KEY `nh_id` (`nh_id`), CONSTRAINT `nh_chapter-nh` FOREIGN KEY (`nh_id`) REFERENCES `nh` (`nh_id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=244808 DEFAULT CHARSET=utf8mb4 COMMENT='小說章節表';