当前课程知识点:MySQL数据库案例教程 >  第5章 高级操作 >  5.5 触发器 >  5-5触发器视频

返回《MySQL数据库案例教程》慕课在线视频课程列表

5-5触发器视频在线视频

下一节:5-5触发器课件

返回《MySQL数据库案例教程》慕课在线视频列表

5-5触发器视频课程教案、知识点、字幕

同学们好

我们今天继续学习第五章的内容

触发器

在本节中我们首先介绍触发器的概念

然后对其语法进行讲解

最后是案例分析与实践操作

在本教材所给的案例中我们知道

score表是用来存放学生的成绩的

在现实中

学生的成绩应该是安全等级是很高的

因此呢

我们不希望学生的成绩被改来改去

当成绩表的内容发生变化时

我们希望数据库

可以自动的记录

是谁对成绩表进行了什么样的操作

触发器呢就能完成这一工作

触发器

它是一种与表操作相关的数据库对象

当触发器所在的表上出现指定的事件时

触发器便会自动的执行

触发器除了完成我们上面说的审计的任务外

还可完成其它多样的工作

比如安全性

触发器呢可以基于数据库的某些值

使用户具有操作数据库的某种权利

还有呢就是实现

复杂的非标准的数据库相关完整性的规则

触发器可以对数据库中

相关的表格进行连环的更新

还有的是触发器

能够拒绝或者退回那些破坏数据完整性的变化

取消那些试图更改数据的一些事务

触发器还可以实现同步的复制数据库中的数据

它还可以自动的计算数据的值

比如说如果数据它的值达到了一定的要求

则进行特定的处理

下面呢我们来学习触发器的相关语法

我们可以看一下触发器的语法

create trigger

加上后面一些内容

这与我们之前讲的

存储过程或者函数是类似的

其中我们需要注意的是什么呢?

触发器的时间包括before和after

before的含义

是在触发事件发生前运行触发器

after的呢

它的含义是

在触发事件发生之后运行触发器

触发事件包括insert

update和delete三种

触发时间与触发事件组合

就得到了六种触发器的类型

此外

语法中还包含了其它的一些关键字

需要大家注意

for each row

它的含义是每当一行数据受到影响的时候

就执行一次触发器

OLD与NEW用来标记被更改前的数据

与被更改后的数据

删除触发器的语法为

drop trigger

查询触发器的语法为

show triggers

下面我们通过两个案例

来演示一下触发器的创建与使用

【案例1】

创建一个触发器

当对score表执行插入操作后

将执行该操作的用户名录入 logscore表中

logscore表包含两列参数

参数如下

通过案例的描述我们知道

触发器为AFTER INSERT 类型

我们首先需要创建logscore这个表格

用来记录用户名

触发器的程序体执行的内容是

得到当前的用户名并且插入到

logscore这个表中

我们来看具体操作

首先是更改分隔符

然后是创建触发器的关键字

create trigger 和触发器的名称

接着是触发器的类型

本案例中触发器的类型为after insert

此触发器存在在score表中

而且每当有一行数据被修改

就运行一次触发器

然后是begin end以及其中的程序体

在验证触发器的过程中

我们首先需要向触发器所在的score表中

使用insert语句插入一行数据

然后我们在查询logtable表

是否已经记录了该数据

【案例2】

创建一个触发器

当course表的cno列执行修改后

将score表中的cno列同时进行修改

以保证数据的一致性

通过案例的描述可知

触发器为AFTER UPDATE 类型

由于我们需要用到更新前与更新后的数据

因此呢

我们在这里需要使用OLD与NEW变量

触发器程序体的执行

是根据OLD变量定位表score中的行

并更新为NEW变量

我们来看具体操作

在本小节中

我们首先介绍了触发器的相关概念

然后我们对触发器的语法进行了讲解

需要大家注意的是六种触发器的类型

与OLD/NEW变量的概念

最后我们通过两个案例

讲解了触发器的创建与使用

本次课就讲到这里

谢谢

再见

MySQL数据库案例教程课程列表:

第1章 数据库基础知识

-1.1 数据库基础知识

--1.1 数据库基础知识视频

--1-1数据库基础知识课件

-1.2 MySQL的安装与运行

--1-2MySQL安装与运行视频

--1-2MySQL安装与运行课件

--1-2MySQL安装与运行实训

-第1章 测试

第2章 数据库和表的基本操作

-2.1 数据库的基本操作

--2-1数据库的基本操作视频

--2-1数据库的基本操作课件

--2-1数据库的基本操作实训

-2.2 表的基本操作

--2-2表的基本操作视频

--2-2表的基本操作课件

--2-2表的基本操作实训

-2.3 MySQL数据类型

--2-3MySQL数据类型视频

--2-3MySQL数据类型课件

--2-3MySQL数据类型实训

-2.4 约束设置

--2-4约束设置视频

--2-4约束设置课件

--2-4约束设置实训

-2.5 索引

--2-5索引视频

--2-5索引课件

--2-5索引实训

-第2章测试

第3章 记录操作

-3.1 插入记录

--3-1 插入记录视频

--3-1插入记录课件

--3-1插入记录实训

-3.2 修改记录

--3-2修改记录视频

--3-2修改记录实训

--3-2修改记录课件

-3.3 删除记录

--3.3删除记录

--3-3删除记录实训

--3-3删除记录课件

-第3章 测试

第4章 查询与视图

-4.1 select语句

--4.1select 语句视频

--4-1select语句课件

--4-1select语句实训

-4.2 单表查询

--4-2-1select子句

--4-2-2where子句

--4-2-3group子句

--4-2单表查询实训

-4.3 多表查询

--4-3多表查询视频

--4-3多表查询课件

--4-3多表查询实训

-4.4 子查询

--4-4子查询视频1

--4-4子查询视频2

--4-4子查询课件

--4-4子查询实训

-4.5 外键

--4-5外键视频

--4-5外键课件

--4-5外键实训

-4.6 视图

--4-6视图视频1

--4-6视图视频2

--4-6视图课件

--4-6视图实训

-第4章测试

第5章 高级操作

-5.1 函数

--5-1自定义函数视频

--5-1系统函数

--5-1函数课件

--5-1 函数实训

-5.2 流程控制语句

--5-2流程控制语句视频

--5-2流程控制课件

--5-2流程控制实训

-5.3 事务与游标

--5-3事务与游标视频

--5-3事务与游标课件

--5.3事务与游标实训

-5.4 存储过程

--5-4存储过程视频

--5-4存储过程课件

--5-4存储过程实训

-5.5 触发器

--5-5触发器视频

--5-5触发器课件

--5-5触发器实训

-第5章测试

第6章 备份与还原

-6.1 数据库备份与还原

--6-1数据库备份与还原 视频

--6-1数据库备份与还原 课件

--6-1数据库备份与还原 实训

-6.2 异构数据源导入导出

--6-2异构数据源导入导出 视频

--6-2异构数据源导入导出 课件

--6-2异构数据源导入导出 实训

-第6章测试

第7章 用户与权限

-7.1 用户管理

--7-1用户管理 视频

--7-1用户管理 课件

--7-1用户管理 实训

-7.2 权限管理

--7.2 权限管理 视频

--7.2 权限管理 课件

--7.2 权限管理 实训

-7.3 应用实例开发

--7-3应用实例开发 视频

--7-3应用实例开发 课件

--7-3应用实例开发 实训

-第7章测试

5-5触发器视频笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。