今天,因为项目有3张表,而且3张表之间,都有关联,我又重温习了一个主键与外键的运用:
--删掉表
drop table dept
drop table emp
--创建dept表,
create table dept(deptno int primary key,dName nvarchar(30),loc nvarchar(30))
--这里是dept(deptno)主键指向外键emp(deptno),没有联级删除与更新
create table emp(empno int primary key
,eName nvarchar(30),
job nvarchar(30),
mgr int,
hiredate datetime,
sal numeric(10,2),
comm numeric(10,2),
deptno int foreign key references dept(deptno));
--以后为创建表时,并创建联级关系
create table emp(empno int primary key
,eName nvarchar(30),
job nvarchar(30),
mgr int,
hiredate datetime,
sal numeric(10,2),
comm numeric(10,2),
--联级删除
deptno int foreign key references dept(deptno) on delete cascade);
--联级更新
--deptno int foreign key references dept(deptno) on update cascade);
--如果是创建表时,没有创建联级关系,可以再增加
create table emp(empno int primary key
,eName nvarchar(30),
job nvarchar(30),
mgr int,
hiredate datetime,
sal numeric(10,2),
comm numeric(10,2),
deptno int);
--这段语句就是增加联级的删除与更新
alter table emp add constraint FK_deptno foreign key (deptno) references dept(deptno) ON UPDATE CASCADE ON DELETE CASCADE
[color=red]以上的操作都是在sql server 2000中进行的,以下部分是插入与删掉的数据,本人已经操作过没有问题,图片就不上传了。
[/color]
insert into dept values(10,'grtu','newke')
insert into dept values(20,'sl','shengchang')
insert into emp(empno,eName,job,mgr,hiredate,sal,deptno)values
(103,'dengping','cleck',9,'1985-9-12',1300.00,10)
insert into emp(empno,eName,job,mgr,hiredate,sal,deptno)values
(106,'milik','cleck',9,'1985-9-12',1300.00,30)--deptno这时为30时,就违反了主键定义,因为30不存在,这就是外键指向主键的运用
insert into emp(empno,eName,job,mgr,hiredate,sal,deptno)values
(105,'lichong','IPQC',93,'1990-2-22',1400.00,10)
insert into emp(empno,eName,job,mgr,hiredate,sal,deptno)values
(104,'lichong','IPQC',93,'1990-2-22',1400.00,20)
select * from emp
select * from dept
delete from emp where empno= '105';
--联级删除
delete from dept where deptno= '10';
--联级更新
update dept set deptno=11 where deptno =10;
主键与外键的运用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
震惊:蔡英文决定 为安倍「下半旗」,真的合理吗?
SteveSapp9
2022-07-11 17:06:56
哪些因素会影响性欲?这些因素不容小觑
SteveSapp9
2022-07-04 20:32:20
台媒爆料“台版51区”兴建“神秘”设施 “面积大到令人好奇”
SteveSapp9
2022-06-23 14:39:41
河北省公安厅发布关于陈某志等涉嫌寻衅滋事、暴力殴打他人等案件侦办进展情况的通报
LouisRodgers5773
2022-06-21 16:49:16
曼联遇到障碍将克里斯蒂安·埃里克森带到老特拉福德
ktn83
2022-06-18 07:55:27
如何提高性生活质量?这六个妙招快快学起来!
mugiseki2710
2022-06-17 15:34:42
UEFAチャンピオンズリーグ决胜戦、米で视聴者数が过去最高に
fikik75972
2022-06-16 23:48:20
wewerewrr werwerwer
pennyjhurd
2022-06-12 18:34:42
fds rew rewrewrewrew
mufajiqe
2022-06-12 18:04:40
Deep Lake Water Cooling System Market To Witness Huge Growth By 2030
chhidami.a.msg
2022-06-08 22:14:54
专家建议晚饭只吃七分饱,常见的胃病有哪些?
LouisRodgers5773
2022-06-08 15:16:23
肝脏不好怎么调理?
LouisRodgers5773
2022-06-08 14:49:19
中国人民解放军的最高军事机关为中央机关为中央军事委员会
fikik75972
2022-06-08 00:31:46
台中叫/小/姐濑tea232台中/外/约✔外拍麻豆✔校园系花✔专柜正妹❤
lan520an109
2022-06-07 19:29:34