《MySQL数据库应用》课件-项目八 触发器的应用_第1页
《MySQL数据库应用》课件-项目八 触发器的应用_第2页
《MySQL数据库应用》课件-项目八 触发器的应用_第3页
《MySQL数据库应用》课件-项目八 触发器的应用_第4页
《MySQL数据库应用》课件-项目八 触发器的应用_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目八触发器的应用318319任务1创建触发器任务2删除触发器创建触发器

任务13201. 了解触发器的概念。2. 能创建触发器。3. 能使用触发器。321322触发器通过监听事件(如INSERT、UPDATE和DELETE语句)来触发预设操作。当数据库系统执行这些事件时,会自动触发触发器执行相应的逻辑。触发器可实现事件监听与响应机制,从而确保数据操作的一致性。323本任务要求使用SQL语句,创建名为“before_noupdate”且包含多条执行语句的触发器,如图所示,该触发器能实现系部表“tb_deparement”中计算机系的电话字段不被更新。创建触发器324一、触发器概述触发器是一个特殊的存储过程,与普通的存储过程不同的是,触发器无须通过CALL语句调用或手工启动,只要预定义的事件发生,就会被MySQL自动触发执行。1. 触发器的作用触发器在插入、删除或修改特定表中的数据时触发执行,常用于强制执行业务规则,具有较强的数据控制能力。(1)安全控制触发器能基于数据值限制用户操作,或根据数据库状态动态约束操作权限。(2)审计跟踪触发器能跟踪用户对数据库的操作,将数据变更写入审计表。325(3)数据完整性控制触发器可以实现复杂的数据完整性规则,弥补标准约束的不足。与普通约束不同,触发器能引用表中的列或数据库对象,支持更灵活的逻辑判断。(4)复杂的级联操作外键可实现简单的级联更新或删除,而触发器能支持更复杂的级联逻辑。3262. 触发器的优点触发器可以保证数据库中的数据始终处于合法状态,从而维护数据完整性。3. 触发器的缺点在使用触发器带来诸多便利的同时,也引发了一些问题。触发器存储在数据库中,由事件驱动,这种特性对系统维护构成挑战。数据表结构的变更也会导致触发器出错,进而影响数据操作。在触发器占用服务器端资源而造成较大压力后,在高频操作的数据表上不建议创建触发器,因为它会对数据表中受影响的每一行执行一次触发器,导致消耗服务器资源较多。327二、触发器的创建1. 创建只有一条执行语句的触发器使用SQL语句创建只有一条执行语句的触发器时,需要选择目标数据表、触发时机和触发事件。创建触发器的SQL语法格式如下。3282. 创建有多条执行语句的触发器创建有多条执行语句的触发器与创建有一条执行语句的触发器的操作极为相似,同样需要选择目标数据表、触发时机和触发事件,而创建有多条执行语句的触发器时,可以使用关键字BEGIN和END作为开始和结束,中间包含多条语句。创建有多条执行语句的触发器的SQL语法格式如下。329删除触发器任务23301. 了解查看触发器的方法。2. 能删除触发器。331332虽然触发器便捷灵活,但是也存在一些缺陷。在同一触发条件下,触发器的指令可能会重叠,这就容易出现指令冲突的情况,可能会造成系统或数据库宕机,所以需要及时清理数据库中多余的触发器。本任务通过Navicat,在教学管理系统数据库“schoolsys”中使用SELECT语句,在数据库“information_schema”的表“TRIGGERS”中查找名为“before_noupdate”的触发器并使用DROP语句删除,如图所示。删除触发器333一、触发器的查看1. 查看当前数据库中所有触发器的定义在MySQL中,使用SHOW TRIGGERS语句可查看当前数据库中所有触发器的定义,包括名称、触发时机、关联表、触发语句和创建时间等。具体SQL语法格式如下。2. 查看当前数据库中某个触发器的定义查看某个触发器的定义时,可使用SHOW CREATE TRIGGER语句,具体SQL语法格式如下。3343. 在表“TRIGGERS”中查看触发器的信息在MySQL中,所有触发器的定义都存储在数据库“information_schema”的表“TRIGGERS”中,可通过SELECT语句查看,且可通过WHERE子句来查看指定名称的触发器,具体的SQL语法格式如下。335二、触发器的删除使用DROP TRIGGE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论