How to Create Triggers in MySQL
https://www.sitepoint.com/how-to-create-mysql-triggers/
I created two tables:
CREATE TABLE `sw_user` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT '',
`mobile` varchar(50) DEFAULT '',
`sex` tinyint(4) DEFAULT 0,
`address` varchar(255) DEFAULT '',
`status` tinyint(4) unsigned NOT NULL DEFAULT 1,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8;
CREATE TABLE `sw_log` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`t_name` varchar(50) DEFAULT '',
`t_id` int(11) unsigned DEFAULT 0,
`t_flag` tinyint(4) unsigned DEFAULT 1,
`status` tinyint(4) unsigned DEFAULT 1,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8;
I created three triggers:
CREATE TRIGGER `sw_user_insert` AFTER INSERT ON `sw_user` FOR EACH ROW BEGIN
INSERT INTO sw_log(t_name, t_id, t_flag) values('sw_user', NEW.id, 1);
END; CREATE TRIGGER `sw_user_update` AFTER UPDATE ON `sw_user` FOR EACH ROW BEGIN
INSERT INTO sw_log(t_name, t_id, t_flag) values('sw_user', OLD.id, 2);
END; CREATE TRIGGER `sw_user_delete` AFTER DELETE ON `sw_user` FOR EACH ROW BEGIN
INSERT INTO sw_log(t_name, t_id, t_flag) values('sw_user', OLD.id, 3);
END;
first, I insert some records:
INSERT INTO `sw_user`(name, mobile, sex, address) VALUES('coffee', '1801863971x', 1, 'Shenzhen');
INSERT INTO `sw_user`(name, mobile, sex, address) VALUES('sam', '1701892512y', 1, 'Beijing');
INSERT INTO `sw_user`(name, mobile, sex, address) VALUES('bruce', '1391766716x', 1, 'Nanjing');
INSERT INTO `sw_user`(name, mobile, sex, address) VALUES('vicky', '138982589x', 1, 'Shanghai');
sw_user

sw_log

second, I update and delete one record
UPDATE `sw_user` SET mobile = '1567892587x' WHERE id = 1;
DELETE FROM `sw_user` WHERE id = 1;


How to Create Triggers in MySQL的更多相关文章
- ORA-04089: cannot create triggers on objects owned by SYS
04089 问题原因 因为你在以sys用户创建触发器,但oracle却不建议在sys用户下创建触发器.
- linux下安装多个mysql实例(摘自国外:How to create multiple mysql instance in CentOS 6.4 and Red Hat 6.4)
How to create multiple mysql instance in CentOS 6.4 and Red Hat 6.4 from:http://sharadchhetri.com/20 ...
- mysql 数据库复制表 create table city1 like city;
-- 只复制表结构 create table city1 like city; INSERT INTO test2 SELECT * FROM test; -- 上面的表必须存在 -- 复制整张表的数 ...
- mysql CREATE DATABASE语句 语法
mysql CREATE DATABASE语句 语法 作用:创建数据库. 大理石构件 语法:CREATE DATABASE database_name mysql CREATE DATABASE语句 ...
- [MySQL Reference Manual] 24 MySQL sys框架
24 MySQL sys框架 24 MySQL sys框架 24.1 sys框架的前提条件 24.2 使用sys框架 24.3 sys框架进度报告 24.4 sys框架的对象 24.4.1所有sys下 ...
- [MySQL Reference Manual] 7 备份和恢复
7. 备份和恢复 本章主要会介绍: 1.备份的类型:逻辑备份,物理备份,全备和增量4种 2.创建备份的方法 3.还原方法,包括还原到时间点 4.备份计划,压缩和加密 5.表维护,恢复损坏的表 7. 备 ...
- MySQL常用SQL语句
一.数据库操作 1.创建数据库: Mysql> CREATE DATABASE databaseName; Mysql数据库的数据文件默认存放在/usr/local/mysql/var/目录下, ...
- mysql传统主从、双主复制+keepalived配置步骤
mysql主从.主主复制(双主复制)配置步骤 一:MySQL复制: MySQL复制简介: 将master服务器中主数据库的ddl和dml操作通过二进制日志传到slaves服务器上,然后在master服 ...
- MYSQL触发器学习笔记
课程学至金色晨曦科技公司技术总监沙利穆 触发器 1. 什么是触发器 触发器是一种特殊类型的存储过程,不由用户直接调用.创建触发器时会对其进行定义,以便在对特定表或列作特定类型的数据修改时执 ...
随机推荐
- Java输入输出流详解2
InputStream/Reader:所有输入流的基类,只能从中读取数据: OutputStream/Writer:所有输出流的基类,只能向其写入数据.
- oracle 调用包体的函数并返回return值
/// <summary> /// 执行数据库包体操作,返回结果 /// </summary> /// <param name="cmdText"&g ...
- Error:stray '\243' in program
c++ 程序出现 Error:stray '\243' in program 错误 错误情况: 错误原因: 有不标准的 ASCII 字符出现,一般是中英文问题,比如 :or ; , or ,等 ...
- 获取txt里面的内容
import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.Event; var txtLoad:URLL ...
- pta7-19打印学生选课清单(模拟)
题目链接:https://pintia.cn/problem-sets/1101307589335527424/problems/1101314114875633664 题意:输入n个学生,k門课程, ...
- Mac安装MySQL数据库
一 下载及安装社区版MySQL和MySQL Workbench. 二 如果MySQL Workbench无法登陆,则系统偏好设置-MySQL-Initialize Database,选择legacy开 ...
- 微信小程序开发——使用promise封装异步请求
前言: 有在学vue的网友问如何封装网络请求,这里以正在写的小程序为例,做一个小程序的请求封装. 关于小程序发起 HTTPS 网络请求的Api,详情可以参考官方文档:wx.request(Object ...
- 【python】理解循环:for,while
先看下for结构: #!/usr/bin/python # -*- Coding:UTF-8 -*- for i in range(1): print i 输出: 0 输入和输出: #!/usr/bi ...
- 分布式大数据多维数据分析(olap)引擎kylin[转]
Apache Kylin是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay 开发并贡献至开源社区.它能在亚秒内查询巨大的Hiv ...
- ubuntu系列-很好用的截图工具shutter
直接在ubuntu软件市场中搜索“shutter”下载即可