mysql触发器 存储过程

版权声明:尊重原创 https://blog.csdn.net/qq_40163092/article/details/86616987

一、触发器
MYSQL包含对触发器的支持,触发器是一种与表操作有关的数据库对象,当触发器在表上出现指定事件时,调用该对象,也就是说表的操作事件触发表上的触发器执行。
创建触发器语法如下:

CREATE TRIGGER trigger_name
trigger_time
trigger_event NO tb1_name
FOR EACH ROW
TRIGGER_STMT

trigger_name 代表 触发器名字 用户自行定义

trigger_time 触发时机(什么时候触发) 取值:BEFORE 或者 AFTER

trigger_event 触发事件(取值:update insert delete);

tb1_name 指定那张表上触发

trigger_stmt 触发器的程序体 可以是一条sql 也可以是begin end包含的多条语句。

可见六种触发器before insert 、 before update、 before delete、after insert、after update、after delete。
限制 一个表上最多简历6个触发器,不能建立同种触发器。

二、存储过程
MYSQL的存储过程是从mysql5.0开始增加的新功能。
特点有很多主要的还是:执行效率和sql代码块封装。代码块封装也就是说我们可以组织多条sql放在一起执行,业务逻辑可以封装在存储过程中,这样不仅利于维护,执行效率也高。

1.创建存储过程

1.drop procedure if exists pr_add     -- (备注:如果存在名字为pr_add的存储过程,先删除掉)
语法:
create procedure pr_add(参数,参数);    --参数可以指明是带入  或者带出  参数类型。
begin
	sql代码块
end

call pr_add 调用存储过程

猜你喜欢

转载自blog.csdn.net/qq_40163092/article/details/86616987
今日推荐