触发器 和数据库的备份

1触发器定义 :

trigger 事件绑定的过程

捕获对象

以前端为例 js Document.getElementById

$("#")

编写条件

触发条件 click blur

判断条件 if (){ block}

执行函数

Function(){}

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

触发器的编写

以tab1 和tab2 为案例

当tab1 被插入的时候,自动插入到tab2

创建触发器

DELIMIER || 声名 mysql 的结束符,默认结束符是;

CREATE TRIGGER tb2_auto_add AFTER INSERT

ON tb1 FOR EACH ROW BEGIN

insert into tb2(name,age) value ("老王",18);

end

||

DELIMITR ;声名mysql的结束符 ,默认结束符数;

insert 出入事件

EACH ROW 任意一行

BEGIN 开始编写触发软件

insert into tb2 (name,age)value("老王",17);触发

end 触发事件结束

测试效果

触发器的语句分析

CREATE TRIGGER tb2_auto_add AFTER INSERT

ON tb1 FOR EACH ROW

BEGIN

insert into tb2(name,age) value ("老王",18);

end

create 创建

trigger 触发器

tb_auto_add 触发器名称.必须有意义

AFTER 触发时间

AFTER 在触发时间之后

BEFOR 在触发器之前

INSERT 触发的条件

UPDATE 更新事件

DELETE 删除事件

INSERT 插入事件

EACH ROW 任意一行

BEGIN 开始编写事件

insert into tb(name,age)value("老王",18), 触发的时间

END 触发时间结束

查看触发器

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

select * frominformation_schema.triggers;

删除触发器

drop trigger tirggerName

使用触发器之前,一定要去确认好数据库关系可不不可以完成需求。

DELIMITER;

在触发期当中,NEW 变量代表触发表。

DELIMITER ||

cerate trigger tb5_add_tb3_id_1 after insert ON ta3

for each ROW

BEGIN

insert into tb5(tb_id) value (NEW.ID);

END

||

DELIMITER;

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

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

3、实现业务规则

4、同步数据

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

数据库的备份

数据库的导入和导出

mysqldump

导出数据库

mysqldump -u root -p database table >*.sql

导入

mysql -u 用户名 -p 数据库名称 < 数据库文件

不在mysql内部执行

猜你喜欢

转载自blog.csdn.net/weixin_44303465/article/details/88651870