1 / 5
文档名称:

7实验七触发器.doc

格式:doc   大小:116KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

7实验七触发器.doc

上传人:书生教育 2021/11/13 文件大小:116 KB

下载得到文件列表

7实验七触发器.doc

文档介绍

文档介绍:7实验七触发器
7实验七触发器
1 / 5
7实验七触发器
实验七 触发器
一、实验目的
1)理解触发器的用途、类型和工作原理
2)掌握利用 T-SQL语句创建和维护触发器的方法
3)掌握利用企业管理器创建、维护触发器的方法二、实验内容
创建 after 触发器
(1 )创建一个在插入时触发的触发器

sc_insert,

当向 sc 表插入数据时, 须确保插入的学号已在

Student
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
表中存在,并且还须确保插入的课程号在

Course 表中存在;若不存在,则给出相应的提示信息,并取消插
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
入操作,提示信息要求指明插入信息是学号不满足条件还是课程号不满足条件(注:

Student

表与 sc 表的
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
外键约束要先取消)。
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
create
on sc
after
as
if not

trigger
insert
exists(

sc_insert select

* from

student

, inserted
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
where

=
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
begin
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
print
if

' 插入信息的学号不在学生表中! '
not exists( select * from course
print ' 插入信息的课程号不在课程表中!

, inserted
'

where

=
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
rollback
end
else
begin
if not exists( select * from course , inserted where = begin
print ' 插入信息的课程号不在课程表中! '
rollback
end
end
执行:
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
①、 insert values

into
(, '001'

SC
, '78'

)
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
删除外键约束:
7实验七触发器
7实验七触发器
5 / 5
7实验七触发器
alter

table

SC
7实