mysql数据库主外键级联删除脚本RESTRICT --> CASCADE

在项目中,我们一般在数据库设计的时候做主外键关联设计,要么就不做.但是这样不符合规范,呵呵.

建立主外键关系的时候,默认是不能级联删除的.而出现往往在删除主表的数据时报错, 需要先删除从表然后再删除主表才可以.

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就可以了. 这样的级联删除要视情况而定,在有些场合使用个人觉得还是非常方便的。

posted @ 2013-11-28 14:32  全新时代-小小程序员大梦想  阅读(2520)  评论(0编辑  收藏  举报