触发器在数据库课程教学中的应用研究
2021-11-24景伟娜陈红军段林羽
景伟娜 陈红军 段林羽
摘要:数据库应用系统对数据库内的数据要求比较高,要求所设计的数据库能保证一定程度的数据完整性,从而保证有关联数据的一致性。本文中以MySQL中的DML触发器应用在人事管理数据库为例,介绍了如何利用触发器实现表与表之间的数据一致性。
关键词:触发器;完整性;数据一致
一、引言
数据库的完整性是指保护数据库中数据的正确性、有效性和相容性,防止错误的数据进入数据库造成无效操作,本部分内容在数据库课程教学中属于难点。本文主要介绍作为数据完整性实施的方法之一的触发器在数据库应用中(本文以人事管理应用系统为例)的使用以增强本知识块的掌握。
二、触发器介绍
MySQL中的DML触发器通过用户对数据库中表的操作触发,由于触发器是由操作触发的过程,因此可以利用触发器进行维护表间数据的一致性。
创建触发器的语法格式如下:
create trigger 触发器名
before | after
insert | delete | update
on 表名
for each row
<触发体>
触发器名即创建的触发器的名字;before | after即触发时间,在操作前还是操作后触发;insert | delete | update即对表进行的添加、删除、更新的触发操作;表名即在哪个表上进行的操作;for each row表示任何记录执行对应操作都会触发触发器;触发体里包含了触发时要执行的SQL语句。
触发器将没有操作之前的状态保存到old关键词:中,将操作后的状态保存到new关键词:中,语法为old/new.字段名。需要注意的是,insert型触发器只有new,new 表示将要(插入前)或者已经(插入后)增加的数据;update型触发器既有old也有new,old表示更新之前的数据,new表示更新之后的数据;delete型触发器只有old,old 表示将要(删除前)或者已经(删除后)被删除的数据。……
