博客
关于我
触发器——创建||更新||删除||查看
阅读量:524 次
发布时间:2019-03-07

本文共 1359 字,大约阅读时间需要 4 分钟。

触发器的使用与创建指南

触发器是一种在数据库操作执行后自动触发的操作,常用于记录数据变更日志。以下将介绍如何创建触发器,并展示其在不同操作中的应用场景。

一、触发器的作用

触发器能够在数据库表的数据插入、更新或删除操作发生后,自动记录相关操作信息。这种机制特别有助于数据审计和追踪,能够提供详细的操作日志。

二、创建触发器的步骤

创建触发器需要根据数据库类型(如MySQL、Oracle等)进行设置。以下以MySQL为例,展示插入、更新和删除操作的触发器创建方法。

1. 插入操作的触发器

create trigger emp_insert_triggerafter insert on empfor each rowbegin    insert into emp_logs(id, operation, operate_time, operate_id, operate_params)    values(null, 'insert', now(), new.id, concat('插入后(id:', new.id, ', name:', new.name, ', age:', new.age, ', salary: ', new.salary, ')));end;

2. 更新操作的触发器

create trigger emp_update_triggerafter update on empfor each rowbegin    insert into emp_logs(id, operation, operate_time, operate_id, operate_params)    values(null, 'update', now(), new.id, concat('修改前(id:', old.id, ', name:', old.name, ', age:', old.age, ', salary: ', old.salary, '), 修改后(', new.id, ', name:', new.name, ', age:', new.age, ', salary: ', new.salary, ')));end;

3. 删除操作的触发器

create trigger emp_delete_triggerafter delete on empfor each rowbegin    insert into emp_logs(id, operation, operate_time, operate_id, operate_params)    values(null, 'delete', now(), old.id, concat('删除前(id:', old.id, ', name:', old.name, ', age:', old.age, ', salary: ', old.salary, ')'));end;

三、触发器的使用

在创建触发器后,可以通过数据库管理工具或SQL命令查看触发器的定义和执行情况。例如,使用SHOW TRIGGER命令查看所有触发器的详细信息。

通过以上方法,可以轻松创建并管理数据库表的触发器,实现对数据操作的全面追踪和记录。

转载地址:http://pvznz.baihongyu.com/

你可能感兴趣的文章
MySQL(3)DML详解
查看>>
MySQL(4)运算符 | 关联查询详解
查看>>
MySQL(5)条件查询 | 单行函数 | 事务详解
查看>>
Mysql,group by分组查询、order by排序查询、join连接查询、union联合查询
查看>>
Mysql,sql文件导入和导出
查看>>
MYSQL:int类型升级到bigint,对PHP开发语言影响
查看>>
Mysql:mysql 5.X 报错 ERROR 1193 (HY000): Unknown system variable ‘validate_password_length‘
查看>>
MySQL:MySQL执行一条SQL查询语句的执行过程
查看>>
Mysql:SQL性能分析
查看>>
mysql:SQL按时间查询方法总结
查看>>
MySQL:什么样的字段适合加索引?什么样的字段不适合加索引
查看>>
MySQL:判断逗号分隔的字符串中是否包含某个字符串
查看>>
MySQL:某个ip连接mysql失败次数过多,导致ip锁定
查看>>
MySQL:索引失效场景总结
查看>>
Mysql:避免重复的插入数据方法汇总
查看>>
MyS中的IF
查看>>
M_Map工具箱简介及地理图形绘制
查看>>
m_Orchestrate learning system---二十二、html代码如何变的容易
查看>>
M×N 形状 numpy.ndarray 的滑动窗口
查看>>
m个苹果放入n个盘子问题
查看>>