在项目中,我们一般在数据库设计的时候做主外键关联设计,要么就不做.但是这样不符合规范,呵呵.
建立主外键关系的时候,默认是不能级联删除的.而出现往往在删除主表的数据时报错, 需要先删除从表然后再删除主表才可以.
DROP TABLE IF EXISTS `tbl_cu_caroutput`;
CREATE TABLE `tbl_cu_caroutput` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id编号',
`output` varchar(20) DEFAULT NULL COMMENT '排量',
`f_carsn_id` int(11) DEFAULT NULL COMMENT '车系',
PRIMARY KEY (`id`),
KEY `fk_caroutput_carsn` (`f_carsn_id`),
CONSTRAINT `fk_caroutput_carsn` FOREIGN KEY (`f_carsn_id`) REFERENCES `tbl_cu_carsn` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8;
默认是: RESTRICT 修改为--> CASCADE就可以了. 这样的级联删除要视情况而定,在有些场合使用个人觉得还是非常方便的。