补充内容1(触发器).ppt

补充内容1(触发器).ppt

ID:52183597

大小:380.00 KB

页数:44页

时间:2020-04-02

补充内容1(触发器).ppt_第1页
补充内容1(触发器).ppt_第2页
补充内容1(触发器).ppt_第3页
补充内容1(触发器).ppt_第4页
补充内容1(触发器).ppt_第5页
资源描述:

《补充内容1(触发器).ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、触发器概述触发器可以用于SQLServer2000约束、默认值和规则的完整性检查,和CHECK约束相比较,触发器可以强制实现更加复杂的数据完整性,而且可以引用其他表中的字段。AnIntroductiontoDatabaseSystems触发器的特点:自动运行,不需要人工干预;强制限制的功能比CHECK约束功能更强;其他表的约束优先于触发器;可以更具表修改前后的不同采取不同的处理;可以多层嵌套,最多32层。AnIntroductiontoDatabaseSystems9.2.1触发器原理1.基本术语触发器表触发器使用的逻辑表AnIntrodu

2、ctiontoDatabaseSystems触发器的逻辑表Inserted表:存放数据插入与更新语句的执行时要加入到触发器表中的所有新记录。Deleted表:存放数据删除与更新语句执行时要从触发器表中删除的所有记录。查看方法:select*frominsertedselect*fromdeletedAnIntroductiontoDatabaseSystems2触发器实现过程共三类:1.插入型触发器;2.删除型触发器;3.更新型触发器;AnIntroductiontoDatabaseSystems1.插入型触发器的实现过程将要插入的记录存入

3、触发器表中触发器触发,并将插入的记录插入到inserted表执行触发器定义的操作AnIntroductiontoDatabaseSystems2.删除型触发器的实现从触发器表中删除应删的记录触发器触发,将删除的记录存入到deleted表执行触发器定义的操作AnIntroductiontoDatabaseSystems3.更新型触发器的实现将更新后的新记录存入inserted表中完成触发器表中相关记录的修改执行触发器定义的操作将更新前的旧记录存入deleted表中AnIntroductiontoDatabaseSystems创建触发器只能在当

4、前数据库中创建触发器,创建触发器时可以引用其他数据库中的对象。只有表的所有者有权创建触发器,且不能将该权限转给其他用户。在SQLServer2000中,可以使用企业管理器或者Transact-SQL语句来创建触发器。AnIntroductiontoDatabaseSystems创建触发器当创建一个触发器时必须指定以下几项内容:1)触发器的名称;2)在其上定义触发器的表;3)触发器将何时激发;4)执行触发操作的编程语句。AnIntroductiontoDatabaseSystems创建时要考虑的问题创建的语句CREATETRIGGER必须是批

5、处理的第一个语句;触发器的所有者不能把该权限传给其他用户;触发器命名必须如何命名规则;只能在当前数据库中创建触发器;触发器可以引用临时表,但只能在基本表上创建,且一个触发器只对应一个基本表;TRUNCATETABLE语句不能在触发器中使用;WRITETEXT语句不能触发插入或更新型触发器。AnIntroductiontoDatabaseSystems1.使用企业管理器创建触发器使用企业管理器创建触发器的步骤如下:在企业管理器中,展开指定的服务器和数据库,这里展开服务器下面的教学管理系统数据库,右击“学生表”,从弹出的快捷菜单中依次选择“所有

6、任务”→“管理触发器”命令。AnIntroductiontoDatabaseSystems2.使用Transact-SQL语句创建触发器使用CREATETRIGGER命令也可以创建触发器。:CREATETRIGGERtrigger_nameON{table

7、view}[WITHENCRYPTION]{{{FOR

8、AFTER

9、INSTEADOF}{[DELETE][,][INSERT][,][UPDATE]}[WITHAPPEND][NOTFORREPLICATION]AnIntroductiontoDatabaseSystemsAS[{IF

10、UPDATE(column)[{AND

11、OR}UPDATE(column)][...n]

12、IF(COLUMNS_UPDATED(){bitwise_operator}updated_bitmask){comparison_operator}column_bitmask[...n]}]sql_statement[...n]}}2.使用Transact-SQL语句创建触发器AnIntroductiontoDatabaseSystems其中各参数的说明如下:trigger_name:用于指定触发器的名称。table

13、view:用于指定在其上执行触

14、发器的表或视图。WITHENCRYPTION:用于加密syscomments表中包含CREATETRIGGER语句文本的条目。AFTER:用于规定此触发器只有在触发SQL语句中指

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。