MySQL数据库提升篇-----触发器
admin
2023-05-15 23:02:09
0

day06 MySQL数据库提升篇-----触发器

一、触发器概述:

    触发器是什么?能有什么作用?能给我们带来什么样的操作数据库的方法这都在这里学一一的告诉大家。触发器原理类似于扳机的原理,当你一点击触发的时候就会产生相应的后续动作。下面就具体的创建和使用一下触发器。


二、触发器(trigger):

    1、创建触发器

        create trigger 触发器名  before |  after  触发事件
        on 表名 for each row 
        begin
            执行语句;
        end;
        译:
            before |  after:表示触发器执行的时间,前者是表示触发前执行,
                             后者是表示触发时间之后执行
            触发事件:触发事件代表“insert”、“update”、“delete”三种操作
            表名:指定的触发时间操作的表的名称
            for each row :表示任何一条记录上的操作满足触发器事件都会触发该触发器
            begin ... end:表示开始到结束标签。
            执行语句:表示触发器被触发以后执行的程序。

    实例一:

        创建一个响应delete操作的触发器

        create trigger dlt after delete
        on student for echo row
        begin
            delete username from student;
        end;
        译:
            创建的触发器名:dlt
            触发器执行时间:after
            事件名:删除操作(delete)
            表名:student
            执行语句:从begin.....end之间的删除语句。

    2、创建多个执行语句的触发器

        create trigger 触发器名  before |  after  触发事件
        on 表名 for each row 
        begin
            执行语句1;
            执行语句2;
            执行语句3;
        end;
        译:
            before |  after:表示触发器执行的时间,前者是表示触发前执行,
                             后者是表示触发时间之后执行
            触发事件:触发事件代表“insert”、“update”、“delete”三种操作
            表名:指定的触发时间操作的表的名称
            for each row :表示任何一条记录上的操作满足触发器事件都会触发该触发器
              begin ... end:表示开始到结束标签。
            执行语句1:表示触发器被触发以后执行的程序1。
            执行语句2:表示触发器被触发以后执行的程序2。
            执行语句3:表示触发器被触发以后执行的程序3。

    实例二:

        创建一个响应delete操作的多个触发器

        create trigger dlt after delete
        on student for echo row
        begin
            insert into timelog(savetime) values(new());
            insert into timeinfo(info) values('deleteact');
        end;
        译:
            创建的触发器名:dlt
            触发器执行时间:after
            事件名:删除操作(delete)
            表名:student
            执行语句体:从begin.....end之间的删除语句。

    3、查看触发器

        show trigger;

        3.1、查看trigger表中触发器信息

            select * from infomation_schema.trigger;
            译:
                infomation_schema:是MySQL中默认存在的数据库,用于记录触发器信息的数据表

        3.2、方法二查看

            select * from infomation_schema.trigger where trigger_name='触发器名称';

    4、应用触发器

        触发器的应用就是在你创建成功以后,单独的向表中执行相应的sql语句操作。通过查询去看看你执行的sql语句是否成功。查看timeinfo数据表的插入情况好而被首先执行的顺序。

    5、删除触发器

        drop trigger 触发器名称;


三、结束语:

    学到这里,我们的触发器就学完了,我们可以利用触发器进行数据的备份效果,当你删除某一条数据的时候,我将这条数据新建存储到另外的一张表中。这些都可以通过触发器实现的。想很好的操作触发器就不断的去实验和运用。

相关内容

热门资讯

原创 钢... 工地上老师傅蹲在钢筋堆旁边抽烟,看着旁边刚自建房的老乡一个劲往梁里塞钢筋,忍不住摇头。老乡还挺得意,...
Aalo Atomics与Cr... 先进核能企业Aalo Atomics与专注能源的AI基础设施公司Crusoe宣布达成战略合作,双方将...
首届全国青少年人工智能大赛决赛... 中新网上海8月1日电 (记者 陈静)由中国福利会和中国妇女发展基金会共同主办的首届全国青少年人工智能...
“中国拥有最多人形机器人专利,... 据《福布斯》网站7月31日报道,全球领先的信息与分析提供商LexisNexis近日发布最新分析称,在...
89元带屏三模!AOC GK3... 虽然说机械键盘现在的价格已经很亲民,但并不是所有人都需要机械键盘,也有不少用户更加习惯传统薄膜键盘的...
原创 S... 文/王新喜 《日经亚洲》曝出一条炸裂消息,最近SpaceX组建了一队审计钦差,浩浩荡荡奔赴越南、泰国...
福特慌了!CEO警告:5至10... 快科技7月31日消息,据报道,福特汽车CEO吉姆·法利在当地时间周四(30日)的员工大会上表示,尽管...
50万小时,全球第一:具身的关... 出品|虎嗅科技组 作者|陈伊凡、刘煊琦 编辑|苗正卿 头图|AI生成 2026年1月,硅谷机器人大脑...
原创 日... 2026年7月14日,在"Now is Your Moment"主题旗舰产品发布会上,华为正式面向国...
中伊产业合作园战火下不停产,负... 距离德黑兰约两个小时车程的库姆,是伊朗最大的鞋业生产基地之一。美伊战火下,由中企投资建设的中伊诺威产...