级联删除记录 sql
就是要删除含有被另外表作为外键的表的内容
如何在TABLE 员工基本信息上建立删除员工触发器(注意:员工编号是 下面 工资表的外码)
表结构如下如下:
create table 员工基本信息
(员工编号 varchar(15) primary key,
姓名 varchar(8) not null,
性别 char(2),
年龄 int,
民族 varchar(8),
婚姻状况 char(4),
身份证号 varchar(20),
学历 varchar(8),
政治面貌 char(10),
联系电话 varchar(11),
所属部门号 varchar(15),
所属部门名 varchar(10),
职务 varchar(10),
foreign key (所属部门号) references 部门信息(部门号),
Check(性别 in ('男','女')),
Check(婚姻状况 in ('已婚','未婚')),
);
create table 工资表
(员工编号 varchar(15) ,
所属月份 varchar(15),
姓名 varchar(8) not null,
基本工资 int,
补贴 int,
奖金 int,
加班 int,
扣考核 int,
代扣福利费用 int,
税前小计 int,
所得税 int,
实发工资 int
primary key (员工编号,所属月份),
foreign key (员工编号) references 员工基本信息(员工编号)
如何在TABLE 员工基本信息上建立删除员工触发器(注意:员工编号是 下面 工资表的外码)
表结构如下如下:
create table 员工基本信息
(员工编号 varchar(15) primary key,
姓名 varchar(8) not null,
性别 char(2),
年龄 int,
民族 varchar(8),
婚姻状况 char(4),
身份证号 varchar(20),
学历 varchar(8),
政治面貌 char(10),
联系电话 varchar(11),
所属部门号 varchar(15),
所属部门名 varchar(10),
职务 varchar(10),
foreign key (所属部门号) references 部门信息(部门号),
Check(性别 in ('男','女')),
Check(婚姻状况 in ('已婚','未婚')),
);
create table 工资表
(员工编号 varchar(15) ,
所属月份 varchar(15),
姓名 varchar(8) not null,
基本工资 int,
补贴 int,
奖金 int,
加班 int,
扣考核 int,
代扣福利费用 int,
税前小计 int,
所得税 int,
实发工资 int
primary key (员工编号,所属月份),
foreign key (员工编号) references 员工基本信息(员工编号)
)
primary key (员工编号,所属月份),
foreign key (员工编号) references 员工基本信息(员工编号)on update cascade on delete cascade
foreign key (员工编号) references 员工基本信息(员工编号)on update cascade on delete cascade