MySQL触发器

MySQL在5.0.2版本以上开始支持触发器,触发器是有某些带有命令的时间来触发某些操作,这些事件包括insert语句、delete语句、update语句等。触发器可以用于记录对数据库的操作。1、创

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

 MySQL在5.0.2版本以上开始支持触发器,触发器是有某些带有命令的时间来触发某些操作,这些事件包括insert语句、delete语句、update语句等。触发器可以用于记录对数据库的操作。

1、创建mysql触发器:

(1)创建具有单个执行语句的触发器

create trigger 触发器名称 before | after触发事件

on 表名 for each row 执行语句

 

before| after:指定触发器执行的时间

foreach row:表示在任何一条记录上的操作满足触发事件都会触发该触发器

 

示例:

创建一个table:

create table timelog(

    id int(11) primary key auto_increment,

    savetime varchar(50) not null,

    saveinfo varchar(50) not null

);

创建saveTimeTrigger触发器:

delimiter//

create trigger saveTimeTrigger before insert

on studentinfo for each row

insert into timelog(savetime) values(now());

//

 

当用户向studentinfo表中insert之前,数据库会自动向timelog中插入当前操作的时间

 更多:http://hovertree.com/menu/mysql/

(2)创建具有多个执行语句的触发器

create trigger 触发器名称 before | after 触发事件

on 表名 for each row

begin

执行的语句列表

end

例如:

delimiter//

create trigger saveTimeTrigger before insert

on studentinfo for each row

begin

insert intotimelog(savetime) values(now());

insert intotimelog(saveinfo) values(‘insert’);

end

//

 

2、查看触发器命令

showtriggers;

 

select * from information_schema.triggers where TRIGGER_NAME=’触发器名称’;

information_schema.triggers:是数据库中用于记录触发器信息的数据表;

TRIGGER_NAME:用于指定要查看的触发器名称

 

3、删除触发器

droptrigger 触发器名称;

 

推荐:http://www.cnblogs.com/roucheng/p/mysqlhanshu.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120423.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python画图命令

    python画图命令画两张图importmatplotlib.pyplotaspltplt.rcParams[‘font.sans-serif’]=[‘SimHei’]#用来正常显示中文标签plt.rcParams[‘axes.unicode_minus’]=False#用来正常显示负号plt.figure(1)plt.plot(x_data,y_data,color="red",linewidth…

    2022年5月11日
    42
  • 池化层的作用[通俗易懂]

    maxpooling是CNN当中的最大值池化操作,其实用法和卷积很类似tf.nn.max_pool(value,ksize,strides,padding,name=None)参数是四个,和卷积很类似:第一个参数value:需要池化的输入,一般池化层接在卷积层后面,所以输入通常是featuremap,依然是[batch,height,width,channels]这样的shape第二个参数ksize:池化窗口的大小,取一个四维向量,一般是[1,height,width,1],

    2022年4月10日
    53
  • codeforces round #257 div2 C、D「建议收藏」

    codeforces round #257 div2 C、D

    2022年2月6日
    50
  • 软件项目管理案例教程 第4版 课后习题答案

    软件项目管理案例教程 第4版 课后习题答案软件项目管理案例教程第4版课后习题答案第一章一、填空题1.敏捷模型包括(4)个核心价值,对应(12)个敏捷原则。2.项目管理包括(启动过程组)、(计划过程组)、(执行过程组)、(控制过程组)、(收尾过程组)5个过程组。二、判断题1、搬家属于项目。(√)2、项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的永久性的努力。(×)3、过程管理就是对过程进行管理,目的是要让过…

    2022年6月5日
    44
  • phpstorm 2021.4.2激活码_通用破解码

    phpstorm 2021.4.2激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
    88
  • ARM版Oracle安装包_如何把Linux移植到手机

    ARM版Oracle安装包_如何把Linux移植到手机  linux作为一款流行的嵌入式系统,目前已经有多种架构的MCU支持Linux移植,arm64就是其中一种。今天在这里想做一个笔记,记录一下完整的arm64移植过程。嵌入式Linux系统组成部分嵌入式Linux移植到开发板上时,主要有四个组成部分,下面一一列举。  在启动过程中,bootloader加载设备树文件(dtb),之后启动内核(Startkernel),进而加载根文件系统(debian或者ubuntu),最后进入系统。  那么我们所做的工作可以分为以下三部分:1、进行bootlo

    2025年12月10日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号