• ADADADADAD

    MySQL数据库提升篇-----触发器[ mysql数据库 ]

    mysql数据库 时间:2024-12-24 19:12:04

    作者:文/会员上传

    简介:

    day06 MySQL数据库提升篇-----触发器一、触发器概述:触发器是什么?能有什么作用?能给我们带来什么样的操作数据库的方法这都在这里学一一的告诉大家。触发器原理类似于扳机的原

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

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

    一、触发器概述:

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


    二、触发器(trigger):

    1、创建触发器

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

    实例一:

    创建一个响应delete操作的触发器createtriggerdltafterdeleteonstudentforechorowbegindeleteusernamefromstudent;end;译:创建的触发器名:dlt触发器执行时间:after事件名:删除操作(delete)表名:student执行语句:从begin.....end之间的删除语句。

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

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

    实例二:

    创建一个响应delete操作的多个触发器createtriggerdltafterdeleteonstudentforechorowbegininsertintotimelog(savetime)values(new());insertintotimeinfo(info)values('deleteact');end;译:创建的触发器名:dlt触发器执行时间:after事件名:删除操作(delete)表名:student执行语句体:从begin.....end之间的删除语句。

    3、查看触发器

    showtrigger;

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

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

    3.2、方法二查看

    select*frominfomation_schema.triggerwheretrigger_name='触发器名称';

    4、应用触发器

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

    5、删除触发器

    droptrigger触发器名称;


    三、结束语:

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

    MySQL数据库提升篇-----触发器.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysql数据库提升