sql语句---触发器

一、触发器定义

触发器是一种机制,当某个事物满足某个条件,触发某个功能

当某个事物满足某个条件触发某个功能

用法:

1、安全考虑,考虑到数据被修改的权限问题,用触发器代替用户来添加修改数据。

2、审计功能,对前端操作进行审计

3、实现业务规则

4、同步数据

5、用于科学计算,做数学统计

二、触发器编写

1、编写格式

注意:DELIMITER  是定界符,分隔符的意思

声明mysql的结束符,默认结束符是;

DELIMITER ||
CREATE TRIGGER triggerName AFTER/BEFORE insert ON tableName 
FOR EACH ROW
BEGIN
ISNERT INTO tableName(column1,column2,...)VALUE(....);
END
DELIMITER ;

2.触发器效果的语句

Create 创建

Trigger 触发器

Tb2_auto_add 触发器名称,必须有意义

AFTER 触发时间

AFTER在触发事件之后

BEFOR 在触发器之前

INSERT 触发的条件

UPDATE 更新事件

DELETE 删除事件

INSERT 插入事件

EACH ROW 任意一行

BEGIN 开始编写触发事件

Insert into tb2(name,age) value(“老王”,18); 触发的事件

END 触发事件结束

3、举例分析

以两个表 ta1  和 ta2为例

1.创建table1,table2 表:
create table table1(name char(30),age int)charset="utf8";
create table table2(name char(30),age int)charset="utf8";
2.创建触发器:
DELIMITER ||
create trigger tb2_auto_add after insert on table1 
for each row
begin
insert into table2(name,age)value("老旧",33);
end
DELIMITER ;
insert into table1(name,age)value("老刘",23);

测试结果:

三、查看触发器

触发器的信息都被存放在information_schema数据库当做trigger表当中

查看information_schema中所有信息

select * from information_schema.triggers\G;

四、删除触发器

DROP TRIGGER triggerName;

在触发器中,new 变量代表触发表,可以生成动态的

结果:

猜你喜欢

转载自blog.csdn.net/weixin_44239541/article/details/88650139