《大型数据库》第9讲 触发器

9讲 第9 触发器
第9讲 触发器

NillOrder Random Num 02000060 018 报名 CULL> 02000060 报名 QULL 001 报名 AULL> 引 Could coulame Kind Credit Teacher Depart SchoolTime Limi t un WilNum/Chooselun 015r实用信息技木3候人风0周二56节20430 例[对怎0是特1*0 08信息检索信息技术20月一1030 思考:当学生报名选修 SQLServer实用 技术课程时,Wi11Num应自动加1.如何 处理?
引 例 思考:当学生报名选修SQLServer实用 技术课程时,WillNum应自动加1,如何 处理?

●在指定的表中数据发生变化时 被调用以响应 INSERT、 UPDATE 或 DELETE事件 触发器的作用 强制执行业务规则
触 发 器 的 作 用 在指定的表中数据发生变化时 被调用以响应INSERT、UPDATE 或DELETE事件 强制执行业务规则

e【问题】创建一个触发器TeSt1,要 创 求每当在 Student表中修改数据时 向客户端显示一条“记录已修改!” 的消息 建简单的触发器 SQL格式: CREATE TRIGGER trigger name On table WITH ENCRYPTIONI FORJAFTERJ INSTEAD OF IINSERTI IUPDATEIDELETED AS sql statement 在企业管理器中查看触发器信息
创 建 简 单 的 触 发 器 【问题】创建一个触发器Test1,要 求每当在Student表中修改数据时, 向客户端显示一条“记录已修改!” 的消息 SQL格式: CREATE TRIGGER trigger_name On table [WITH ENCRYPTION] {FOR|AFTER| INSTEAD OF} {[INSERT] [UPDATE] [DELETE]} AS sql_statement 在企业管理器中查看触发器信息

。【问题】将上例中触发器中的FOR UPDATEI改为 INSTEAD OF UPDATE, 查看执行结果有何不同。 9的比较 列·总结: 8使用FOR/ AFTER时,执行触发SL语句 ( INSERT/ UPDATE/ DELETE):在触发 SL语句成功执行后,再执行触发器 3使用 INSTEAD OF时:执行触发器而不 执行触发SQL语句
FOR/AFTER/INSTEAD OF 的 比 较 【问题】将上例中触发器中的FOR UPDATE改为INSTEAD OF UPDATE, 查看执行结果有何不同。 总结: 使用FOR/AFTER时,执行触发SQL语句 (INSERT/UPDATE/DELETE):在触发 SQL语句成功执行后,再执行触发器 使用INSTEAD OF时:执行触发器而不 执行触发SQL语句

1.创建一个触发器,要求每当在 Stucou表中插入数据时,向客丿 端显示一条“记录已添加!”的 消息。 练 习 创建一个触发器,要求每当用 插入 student表的记录时,自动显 示表中所有内容
练 习 1 1. 创建一个触发器,要求每当在 StuCou表中插入数据时,向客户 端显示一条“记录已添加!”的 消息。 2. 创建一个触发器,要求每当用户 插入student表的记录时,自动显 示表中所有内容

系统为每个触发器都自动创建 了 INSERTED表和 DELETED表 INSERTED表用于存放插入操作 时的行: DELETED表用于存放删 巴表和巴巴表 除操作时的行 ●这两个表的结构和被触发器作 用的表的结构相后 用户不能对这两个表进行修改, 但可以读取
INSERTED 表 和DELETED 表 系统为每个触发器都自动创建 了INSERTED表和DELETED表 INSERTED表用于存放插入操作 时的行;DELETED表用于存放删 除操作时的行 这两个表的结构和被触发器作 用的表的结构相同 用户不能对这两个表进行修改, 但可以读取

1.创建一个触发器,要求每当 用户插入 studen表的记录后 自动显示 Studen表中插入的 记录 练 习
练 习 2 1. 创建一个触发器,要求每当 用户插入student表的记录后, 自动显示Student表中插入的 记录

〖问题】创建一个触发器 Seti1lNm,要求当插入、更 新、删除 Stucou表的选课记录 时,能更新 Course表中相应的 建触发器 报名人数。 9说明:该触发器只适用于每 次新增、删除一条记录的情 况
创 建 触 发 器 【问题】创建一个触发器 SetWillNum,要求当插入、更 新、删除StuCou表的选课记录 时,能更新Course表中相应的 报名人数。 说明:该触发器只适用于每 次新增、删除一条记录的情 况

创·考:若有批量的教据新增 建「插△成拥除,应该如何修改 上例中的触发器? 批量数据触发器 处理多条记录的触发器简单 易维护,但每次都更新 course 中每条记录的报名人数。效率 不高
创 建 批 量 数 据 触 发 器 思考:若有批量的数据新增、 插入或删除,应该如何修改 上例中的触发器? 处理多条记录的触发器简单、 易维护,但每次都更新Course 中每条记录的报名人数,效率 不高
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《大型数据库》第8讲 存储过程.ppt
- 《大型数据库》第7讲 视图.ppt
- 《大型数据库》第6讲 索引、约束与数据库其它对象.ppt
- 《大型数据库》第5讲 数据库与事务日志、表.ppt
- 《大型数据库》第4讲 数据库设计基础.ppt
- 《大型数据库》第3讲 Transact-SQL语言编程.ppt
- 《大型数据库》第2讲 Transact-SQL语言.ppt
- 《大型数据库》第1讲 SQL Server2000概述.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第八章 信息安全与职业道德.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第四章 数据库与信息系统.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第七章 计算机网络基础.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第三章 计算机软件系统.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第五章 多媒体应用技术.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第六章 数据通信基础.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第一章 计算机基础知识.ppt
- 深圳大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第二章 计算机件系统.ppt
- 《SQL基础—语句初步》第二章 SQL.ppt
- 宜宾职业技术学院:《实用组网技术》课程教学资源_校园网投标书实例(二).doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_校园网投标书实例(一).doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_交换机虚划分.doc
- 《大型数据库》第10讲 事务与游标编程.ppt
- 《大型数据库》第11讲 SQL Server安全管理.ppt
- 《大型数据库》第12讲 数据库日常维护与管理.ppt
- 《大型数据库》第13讲 应用系统开发.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_第二讲 电子商务系统需求分析.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_第六讲 EB系统分析与设计工具.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_复习.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_第三讲 讨论的内容.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_第四讲 讨论的内容.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_第五讲 应用开发架构.ppt
- 浙江大学:《电子商务系统结构》课程PPT教学课件_第一讲 内容组织和结构.ppt
- 哈尔滨工业大学:《模式识别》课程教学资源(讲义)第一章 绪论(刘家锋).doc
- 哈尔滨工业大学:《模式识别》课程教学资源(PPT课件讲稿)第一章 绪论(刘家锋).ppt
- 哈尔滨工业大学:《模式识别》课程教学资源(讲义)第三章 判别函数分类器.doc
- 哈尔滨工业大学:《模式识别》课程教学资源(PPT课件讲稿)第三章 判别函数分类器.ppt
- 哈尔滨工业大学:《模式识别》课程教学资源(讲义)第二章 距离分类器和聚类分析.doc
- 哈尔滨工业大学:《模式识别》课程教学资源(PPT课件讲稿)第二章 距离分类器和聚类分析.ppt
- 哈尔滨工业大学:《模式识别》课程教学资源(讲义)第五章 特征选择与特征提取.doc
- 哈尔滨工业大学:《模式识别》课程教学资源(PPT课件讲稿)第六章 神经网络在模式识别中的应用.doc
- 哈尔滨工业大学:《模式识别》课程教学资源(讲义)第四章 统计分类器.ppt