mysql条件触发器实例_mysql 触发器实例
测试表1
DROP TABLE IF EXISTS test;
CREATE TABLE test (
id bigint(11) unsigned NOT NULL AUTO_INCREMENT,
name varchar(100) NOT NULL DEFAULT '',
type varchar(100),
create_time datetime,
PRIMARY KEY (ID)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
测试表2
DROP TABLE IF EXISTS test_hisy;
CREATE TABLE test_hisy (
id bigint(11) unsigned NOT NULL AUTO_INCREMENT,
name varchar(100) NOT NULL DEFAULT '',
type varchar(100),
create_time datetime,
operation varchar(100) COMMENT '操作类型',
PRIMARY KEY (ID)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
insert触发器
表test新增记录后,将type值为“1”的记录同时插入到test_hisy表中(AFTER INSERT:录入后触发, BEFORE INSERT:录入前触发)
DELIMITER //
DROP TRIGGER IF EXISTS t_after_insert_test//
CREATE TRIGGER t_after_insert_test
AFTER INSERT ON test
FOR EACH ROW
BEGIN
IF new.type='1' THEN
insert into test_hisy(name, type, create_time, operation)
values(new.name, new.type, new.create_time, 'insert');
END IF;
END;//
update触发器
表test修改时,若type值为“2”则将修改前的记录同时插入到test_hisy表中(AFTER UPDATE:修改后触发, BEFORE UPDATE:修改前触发)
DELIMITER //
DROP TRIGGER IF EXISTS t_before_update_test//
CREATE TRIGGER t_before_update_test
BEFORE UPDATE ON test
FOR EACH ROW
BEGIN
IF new.type='2' THEN
insert into test_hisy(name, type, create_time, operation)
values(old.name, old.type, old.create_time, 'update');
END IF;
END;//
delete触发器
表test删除记录前,将删除的记录录入到表test_hisy中(AFTER DELETE:删除后触发, BEFORE DELETE:删除前触发)
DELIMITER //
DROP TRIGGER IF EXISTS t_before_delete_test//
CREATE TRIGGER t_before_delete_test
BEFORE DELETE ON test
FOR EACH ROW
BEGIN
insert into test_hisy(name, type, create_time, operation)
values(old.name, old.type, old.create_time, 'delete');
END;//
注:
以上触发器例子中出现的new为修改后的数据, old为修改前的数据
mysql条件触发器实例_mysql 触发器实例相关推荐
- 多字段mysql触发器实例_mysql触发器原理与用法实例分析
本文实例讲述了mysql触发器原理与用法.分享给大家供大家参考,具体如下: 本文内容: 什么是触发器 创建触发器 单条触发器语句 多条触发器语句 查看触发器 删除触发器 触发器的新旧记录引用 首发日期 ...
- mysql父子节点分层_mysql 递归实例 父子节点层级递归
在Oracle中可以使用CONNECT BY子句可以轻松的实现递归查询,在MSSQLServer和DB2中则可以使用WITH子句来实现递归查询,MYSQL中即不支持CONNECT BY子句也不支持 ...
- mysql触发器弊端_MySQL触发器的作用及弊端
前言: 触发器只是用在特定的场合,一般情况下,我们还是在代码中处理,因为同一个业务逻辑中,如果代码和sql中都有业务逻辑,那么后期维护将很麻烦,所以要根据实际情况来选择,看是否合适.触发器就是写在数据 ...
- 备份mysql数据库攻略_mysql备份实例攻略
本文系统Centos6.0 首先普及下备份术语:热备份:读.写不受影响: 温备份:仅可以执行读操作: 冷备份:离线备份:读.写操作均中止: 我们备份,一般备份以下几个部分: 1.数据文件 2.日志文件 ...
- java mysql 触发器 存储过程_mysql 触发器 存储过程 java调用
触发器和存储过程是为了提高SQL的运行效率. SQL语句先编译.后执行,而触发器与存储过程都会提前预编译完成,且只编译一次,供反复调用. 随着时代的进步,硬件与带宽的提升,触发器和存储过程提升效率并不 ...
- mysql 触发器 分行_mysql 触发器
mysql 触发器中有两个insert 语句 第二个inert 要用第一个insert 的结果怎么实现 DELIMITER $$ USE `nightclub`$$ DROP TRIGGER /*!5 ...
- mysql触发器 存储过程_mysql触发器和存储过程
Mysql触发器和存储过程 1 / 9Mysql触发器 1.语法:命名规则 CREATE TRIGGER { BEFORE | AFTER } { INSERT | UPDATE | DELETE } ...
- mysql 多数据库实例_Mysql多实例安装
前言:前文已经介绍单实例的安装,我们接着进行Mysql的多实例安装,我们利用多个配置文件,多个启动文件管理多实例 一.安装依赖包yum install ncurses-devel libaio- ...
- mysql 触发器示例_MySQL触发器示例
触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合.触发器的这种特性可以协助应用在数据库端确保数据的完整性. 创建触发器 CREATE TRIGGER trigger_n ...
- mysql rpm 安装多实例_MySQL多实例安装
MySQL多实例安装 1.配置3306实例 1.1.查询服务器上是否已经安装的mysql [root@masterMySQL-5.6.25-1.el6.x86_64.rpm-bundle]# rpm ...
最新文章
- 汉字转拼音php代码函数,php中将汉字转换成拼音的函数代码
- Linux 批量修改文件名
- boost::variant2模块实现默认构造相关的测试程序
- kaggle的图像数据集直接下载到google drive
- CNN中的权重维度解析以及卷积核中的数值是怎么确定的
- 一份感动到哭的成绩单……
- 第二阶段冲刺 NO.2
- Android自定义之流式布局
- LinuxROS与Android哪个重要?
- sql server 配置管理器里为什么是32位_FT VIEW | SE高级应用之数据存入SQL数据库
- DeepMatch推荐系统中的常用算法——Youtube的DeepMatch
- Google-Spyder:Google搜索引擎关键词检索结果抓取
- linux安装iscsi设备,linux系统下安装配置iSCSI教程
- 阿里云商标注册流程步骤-阿里云商标自助注册申请步骤
- BERT: Pre-training of Deep Bidirectional Transformers forLanguage Understanding
- 解答,修正(JAVA+=运算程序诡异事件 )
- java对于微信平台语音接收以及处理,语音下载以及arm格式转换MP3
- ios根据服务器修改App名称,iOS 修改APP 名称
- 【天勤|数据结构】哈夫曼树
- nas存储服务器操作系统,你会用 NAS 给 PC 装系统吗?
热门文章
- 【软考 系统架构设计师】软件架构设计④ 基于架构的软件开发方法
- 泛泰A870 CWM Recovery En/Cn合集
- 如何才能更好发挥WinRunner,实现真正的自动化测试
- sca60c使用程序_第3部分:SCA应用程序的工作负载平衡的WebSphere MQ客户端连接
- Android 动态权限申请
- Easyui and mvc 项目3书籍管理功能
- 计算机多系统启动光盘制作,U盘多系统启动制作教程一步步教你做多系统启动盘...
- java因子分析_spss因子分析
- 浅析百度搜索引擎白皮书
- python网络爬虫从入门到精通吕云翔pdf_Python 网络爬虫从入门到精通