



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
触发器作为一种特殊的存储过程,它基于一个表而创建,与表紧密相连,可以看作是表的一部分,主要用来保证数据的完整性。在SQLServer中一张表可以有多个触发器,用户可以针对delete、insert和update语句分别设置触发器,当用户进行delete、insert和update等数据维护操作执行后,这些事先定义好的触发器对象就会被“触发”,并按事先定义好的规则自动执行。在触发器的“触发”过程中,有两个临时表inserted和deleted发生了作用。这两个特殊的临时表inserted和deleted,仅仅在触发器运行时存在,它们在某一特定时间和某一特定表相关。一旦某一个触发器结束执行时,相应的在二个表内的数据都会丢失。我们可以可以使用这两个表精确地确定触发器的动作对数据表所做的修改。这二个表在结构上与触发表结构相同,它们可用于触发器的条件测试,但用户不能直接更改它们的内容。此外,在delete、insert和update触发器中,禁止访问inserted和deleted表中的text、ntext和image数据类型列。因此,应先深入了解inserted和deleted表的结构和内容,才能更好地了解inserted和deleted表所发挥的作用。我们以一个“教学”数据库为例,说明inserted和deleted表的结构、内容和所发挥的作用。假设该教学库有三个基本表,分别为“学生”、“课程”和“选课”。学生(学生号char(7),姓名char(8),性别char(2),专业char(10))课程(课程号char(4),课程名char(20),课程学分int)选课(学生号char(7),课程号char(4),成绩int)首先我们考察在insert操作后,inserted和deleted表的结构、内容。为此我们建立一个针对insert操作的触发器,以反映inserted和deleted表的情况。Createtriggerin1on学生forinsertAsselect*frominsertedselect*fromdeletedreturn在执行了insertinto学生(学生号,姓名,性别,专业)values(‘0600102',‘张三',‘男',‘电子')后,运行效果见下图。可见insert操作后,Inserted表内包含了所有已插入到表内的新记录,它记录了insert对触发器所在的表的改动。而deleted表中的内容为空。其次我们考察在delete操作后,inserted和deleted表的结构、内容。为此我们建立一个针对delete操作的触发器,以反映inserted和deleted表的情况。Createtriggerde1on学生fordeleteasselect*frominsertedselect*fromdeletedreturn在执行了deletefrom学生where姓名=‘张三'后,运行效果见下图。可见delete操作后,deleted表内包含了所有被删除的记录,它记录了delete对触发器所在的表的改动。而inserted表中的内容为空。最后我们考察在update操作后,inserted和deleted表的结构、内容。为此我们建立一个针对update操作的触发器,以反映inserted和deleted表的情况。Createtriggerup1on学生forupdateasselect*frominsertedselect*fromdeletedreturn在执行了update学生set性别='女where姓名=‘王明'后,运行效果见下图。
可见update操作后,Inserted表内包含了update操作所涉及的所有记录修改后的值,deleted表内包含了update操作所涉及的所有记录修改前的值。它们记录了update对触发器所在的表的改动。因此,在执行insert或update语句时,插入到触发表中的新行同时添加到inserted表中。而执行delete和update语句时,从触发表中删除的行被插入到deleted表中。执行update操作时,它先从表中删除旧行,然后再插入新行,其中被删除的行插入到deleted表中,而插入的新行则被同时记录到inserted临时表中。现将insert、delete和update三种情况下的Inserted和deleted
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第2课 俄国的改革(教学设计)-2024-2025学年九年级历史下册素养提升教学设计(统编版)
- 第八单元实验活动4金属的物理性质和某些化学性质教学设计-2023-2024学年九年级化学人教版下册
- 2025年阜阳幼儿师范高等专科学校单招职业适应性测试题库含答案
- 第六单元整体教学设计-2024-2025学年统编版语文九年级下册
- 2025年山西艺术职业学院单招职业适应性测试题库及答案1套
- 2025年河南工业职业技术学院单招职业技能考试题库带答案
- 2025年恩施职业技术学院单招职业技能测试题库附答案
- 2025年南昌影视传播职业学院单招职业技能测试题库必考题
- 加法运算律(教学设计)-2023-2024学年四年级下册数学人教版
- 2025年阿勒泰职业技术学院单招职业适应性考试题库含答案
- 2024年九年级中考数学专题训练-动点最值之胡不归模型
- 2024年考研英语真题及答案(完整版)
- 2024年中国太平洋财产保险股份有限公司招聘笔试参考题库含答案解析
- 氯碱行业收益如何分析
- 尺寸不符回复报告
- 中华人民共和国护士管理办法
- 无机非金属材料课件
- 中医养生与身心健康课件
- 1、现代生物技术的概念、涵盖的领域
- 30题纪检监察位岗位常见面试问题含HR问题考察点及参考回答
- 重症肺炎护理查房课件文件
评论
0/150
提交评论