# 建表
CREATE TABLE `T_TEST` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`PID` int(11) DEFAULT NULL,
`NAME` varchar(255) DEFAULT NULL,
PRIMARY KEY (`Id`),
KEY `index_1` (`PID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
# 加约束,自身字段约束
alter table T_TEST ADD CONSTRAINT `T` FOREIGN KEY (`PID`) REFERENCES `T_TEST` (`Id`) ON DELETE CASCADE;
# 添加测试记录
insert into T_TEST values(1,1,'1'),(2,1,'2'),(3,1,'3'),(4,2,'4'),(5,2,'5'),(6,4,'6');
select * from t_test;
# 测试级联删除
delete from t_test where id=4;
级联删除,只要删除了父亲节点,此父亲节点派生出来的所有节点都被删除。不管下面是否又有分支。
阅读(992) | 评论(1) | 转发(0) |