2个主外键 约束 是否不起作用了??

来源:互联网 发布:win10网络图标无法启用 编辑:程序博客网 时间:2024/06/02 01:43

drop table grade;
drop table item;
drop table sporter;


create table sporter(
 sporterid varchar2(10) primary key not null ,
 name  varchar2(10) not null ,
 sex  varchar2(6)   ,
 department varchar2(10) not null ,
 CONSTRAINT sporter_sex_ck  check(sex in('男','女'))
);

create table item(
 itemid  varchar2(10) primary key not null,
 itemname varchar2(10) not null,
 location varchar2(50) not null
);
create table grade(
 sporterid varchar2(10)  ,
 itemid  varchar2(10) not null,
 mark  number(1) not null,
 CONSTRAINT grade_mark_ck   check(mark in(6,4,2,0)) ,
 CONSTRAINT sporter_grade_sporterid_fk foreign key(sporterid)
  references sporter(sporterid) on delete cascade, 
 CONSTRAINT sporter_item_itemid_fk  foreign key(itemid)
  references item(itemid) ON DELETE CASCADE 
);

-- 测试数据 sporter (运动员)
insert into sporter(sporterid,name,sex,department) values('1001','李明','男','计算机系');
insert into sporter(sporterid,name,sex,department) values('1002','张山','男','数学系');
insert into sporter(sporterid,name,sex,department) values('1003','李四','男','计算机系');
insert into sporter(sporterid,name,sex,department) values('1004','王二','男','物理系');
insert into sporter(sporterid,name,sex,department) values('1005','李娜','女','心理系');
insert into sporter(sporterid,name,sex,department) values('1006','孙俪','女','数学系');

-- 测试数据 item (项目)
insert into item(itemid,itemname,location) values('x001','男子5000米','一操场');
insert into item(itemid,itemname,location) values('x002','男子标枪','一操场');
insert into item(itemid,itemname,location) values('x003','男子跳远','二操场');
insert into item(itemid,itemname,location) values('x004','女子跳高','二操场');
insert into item(itemid,itemname,location) values('x005','女子3000米','三操场');


-- 测试数据 grade (积分)
insert into grade(sporterid,itemid,mark) values('1001','x001',6);
insert into grade(sporterid,itemid,mark) values('1002','x001',4);
insert into grade(sporterid,itemid,mark) values('1003','x001',2);
insert into grade(sporterid,itemid,mark) values('1004','x001',0);
insert into grade(sporterid,itemid,mark) values('1001','x003',4);
insert into grade(sporterid,itemid,mark) values('1002','x003',6);
insert into grade(sporterid,itemid,mark) values('1004','x003',2);
insert into grade(sporterid,itemid,mark) values('1005','x004',6);
insert into grade(sporterid,itemid,mark) values('1006','x004',4);

 

 

2个主外键 约束 是否不起作用了??

 

 

 

原创粉丝点击