mysql触发器 实例_mysql触发器的三个例子
本节内容:
mysql触发器实例
例1,
复制代码 代码示例:
delimiter //
create trigger InsertUser
before insert on user
for each row
Begin
insert into user_group(uid,gid) values(new.uid,'group4444444444');
end;//
delimiter ;
例2,
复制代码 代码示例:
delimiter //
create trigger InsertUser
before insert on user
for each row
Begin
IF new.Type=2 then
insert into user_group(uid,gid) values(new.uid,'group4444444444');
else
insert into user_group(uid,gid) values(new.uid,'group55555555555')
END IF;
end;//
delimiter ;
例3,
复制代码 代码示例:
delimiter //
create trigger InsertUser
before insert on user
for each row
Begin
IF new.type=1 then
insert into user_group(uid,gid) values(new.uid,'578d3369633b47bd9c1fe8bf905cbfb1');
END IF;
IF new.type=2 then
insert into user_group(uid,gid) values(new.uid,'387bcd57fc5a4c3c9de83ee210fef661');
END IF;
end;//
delimiter ;
mySql触发器实例
在mysql中,使用触发器能进行一些约束。
例子,当Student表的StudentID列被发生更改时,BorrowStudent表的StudentID列也跟着更改.如果Student表删除某记录,BorrowStudent也删除对应StudentID的记录.
复制代码 代码示例:
/*先删除将要创建而存在的表*/
drop table if exists Student;
drop table if exists BorrowStudent;
/*创建表*/
create table Student(
StudentID int not null primary key,
StudentName varchar(30) not null,
StudentSex enum('m','f') default 'm'
)engine=myisam;
create table BorrowStudent(
BorrowRecord int not null auto_increment primary key,
StudentID int not null,
BorrorDate date,
ReturnDate date,
foreign key(StudentID) references Student(StudentID)
)engine=myisam;
/*插入记录*/
insert into Student values(1235412,'java','m');
insert into Student values(3214562,'jiajia','m');
insert into Student values(5441253,'purana','f');
insert into BorrowStudent(StudentID,BorrorDate,ReturnDate)
values(1235412,'2007-01-01','2007-01-07');
insert into BorrowStudent(StudentID,BorrorDate,ReturnDate)
values(3214562,'2007-01-01','2007-01-07');
insert into BorrowStudent(StudentID,BorrorDate,ReturnDate)
values(5441253,'2007-01-01','2007-01-07');
/*创建触发器*/
delimiter $$
drop trigger if exists tduStudent$$
drop trigger if exists tddStudent$$
create trigger tduStudent before update
on Student for each row
begin
if new.StudentID!=old.StudentID then
update BorrowStudent
set BorrowStudent.StudentID=new.StudentID
where BorrowStudent.StudentID=old.StudentID;
end if;
end$$
create trigger tddStudent before delete
on Student for each row
begin
delete
from BorrowStudent
where BorrowStudent.StudentID=old.StudentID;
end$$
delimiter ;
mysql触发器 实例_mysql触发器的三个例子相关推荐
- 多字段mysql触发器实例_mysql触发器原理与用法实例分析
本文实例讲述了mysql触发器原理与用法.分享给大家供大家参考,具体如下: 本文内容: 什么是触发器 创建触发器 单条触发器语句 多条触发器语句 查看触发器 删除触发器 触发器的新旧记录引用 首发日期 ...
- mysql触发器弊端_MySQL触发器的作用及弊端
前言: 触发器只是用在特定的场合,一般情况下,我们还是在代码中处理,因为同一个业务逻辑中,如果代码和sql中都有业务逻辑,那么后期维护将很麻烦,所以要根据实际情况来选择,看是否合适.触发器就是写在数据 ...
- 创建mysql代码实例_MySQL筹建系列之多实例_mysql
mysql搭建系列之多实例 所谓多实例,就是在一台服务器上搭建.运行多个MySQL实例,每个实例使用不同的服务端口,通过不同的socket监听:物理上,每个实例拥有独立的参数配置文件及数据库. 通常情 ...
- mysql 事务实例_mysql实现事务的提交和回滚实例
mysql创建存储过程的官方语法为: 复制代码 代码如下:START TRANSACTION | BEGIN [WORK] COMMIT [WORK] [AND [NO] CHAIN] [[NO] R ...
- mysql 多实例 独立配置文件_三、安装配置多实例MYSQL5.6-多独立配置文件方法
三.安装配置多实例MYSQL5.6-多独立配置文件方法 1.准备工作 检查操作系统版本.内核版本.selinux是否关闭.防火墙策略.IP地址.主机名配置.host表配置.yum配置 上传cmake. ...
- systemctl与mysql多实例_mysql mariadb 多版本多实例 开机启动
----mysql多实例开机启动及加入服务-------– 将脚本cp到init.d目录 cd /usr/mysqlsoft5.6.38_3346/support-files/ [root@mysql ...
- mysql 触发器 实例_mysql的触发器-含案例-含效果 | 时刻需
今天做下触发器的笔记 原来都是用命令的,现在好多都用工具了. 情景一: after 插入本表一 order 后再修改表二 push 表一: CREATE TABLE `33hao_order` ( ` ...
- 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 } ...
- java mysql 触发器 存储过程_mysql 触发器 存储过程 java调用
触发器和存储过程是为了提高SQL的运行效率. SQL语句先编译.后执行,而触发器与存储过程都会提前预编译完成,且只编译一次,供反复调用. 随着时代的进步,硬件与带宽的提升,触发器和存储过程提升效率并不 ...
最新文章
- LVS负载均衡的简单实现
- 一个经典面试题:如何保证缓存与数据库的双写一致性?
- 多重签名(Multisig)
- 4行代码AC——L1-038 新世界 (5分)
- 选购维生素C需要注意的事项
- django入门与实践 3-1 环境搭建
- 使用Docker运行SQL Server
- 论文浅尝 | 面向视觉常识推理的层次语义增强方向图网络
- 课时40:类与对象:一些相关的BIF
- 什么叫python设计模式_什么是Python设计模式
- 游戏开发学什么?四步修炼骨灰级高手
- 【机房收费系统C#版】——导出Excel
- 手机端html本地存储,HTML5 web storage本地存储
- db2数据库连接数 linux_linux下db2数据库命令
- Java程序调用OpenDDS
- C++ 保存txt文本文件
- 基于cat12和SPM12进行大脑VBM数据分析笔记2——统计分析
- 前端后端的区别(超详细版)
- 数据库系统概论-数据库恢复技术
- latch mysql_MySQL中的latch(閂鎖)詳解——易產生的問題以及原因分析
热门文章
- web逻辑思维题目_经典的逻辑思维训练题
- 全国计算机一级模拟软件安装教程
- java phpwind_GitHub - phpwind/windframework: Open-source PHP framework
- win10运行命令大全
- Ubuntu中配置jdk环境变量
- 应用于兴发铝业的PARTsolutions ‒智能化的铝型材数据检索与借用
- 安卓手机左右声道调节应用下载_闪电全能格式转换器下载_闪电全能格式转换器官方下载[转换工具]...
- WebView优化提升H5加载速度方案
- 使用计算机软件,计算机使用软件
- vb 服务器mysql_VB 连接mysql网络数据库的代码