利用触发器来控制对时间的自动更新操作

SQL语句版

CREATE TRIGGER 
trigger_name  trigger_time  trigger_type  ON  table_name
FOR EACH ROW 
rigger_stmt




CREATE TRIGGER 
    insert_ceshi  BEFORE  INSERT ON  ceshi
    FOR EACH ROW 
    BEGIN
    set new.ctime = NOW(), new.utime = NOW();
    END

trigger_name 是触发器的名字

trigger_time 取值为BEFORE和AFTER,表示触发时机。

trigger_type 指触发事件,包括INSERT UPDATE DELETE

trigger_stmt 可以编写存储过程。

工具版(Navicate)

1.打开navicate
2.选择表 右击设计表
在这里插入图片描述
3.选择触发器
在这里插入图片描述
1.自己随意定义名称,便于理解 我是操作类型_表名
2.before和after两种类型 在SQL执行之前或之后
3.选择触发事件: insert update delete
4.如果数据库总存Bigint类型的毫秒值的话将NOW()换为unix_timestamp() * 1000
在这里插入图片描述
图中标注的是当触发器执行时,你让他执行的动作
(我主要是在新增的时候获得当前时间,不用再sql中去写字段,通过触发器去添加时间)

自测
在这里插入图片描述
结果
在这里插入图片描述

(修改 删除 也是一样的操作…)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值