51qsx 发表于 2018-9-28 06:50:54

9,mysql触发器


[*]mysql> create trigger autolog before insert
[*]    -> on user for each row
[*]    -> insert into logtime values(null,now());
[*]    -> //
[*]Query OK, 0 rows affected (0.12 sec)
[*]
[*]mysql> insert into user values(null,'123','123',now())//
[*]Query OK, 1 row affected (0.06 sec)
[*]
[*]mysql> select * from logtime;
[*]    -> //
[*]+----+---------------------+
[*]| id | savetime            |
[*]+----+---------------------+
[*]|1 | 2012-11-05 18:35:02 |
[*]+----+---------------------+
[*]1 row in set (0.00 sec)
创建触发器用的关键字是 trigger  
autolog是触发器的名字
  
before insert 是在插入数据动作之前执行触发器before可以换成after,表明在之后执行动作
  
on user 表明触发器监听表格
  
each row 就是监听user表的每一列
  
user表格如果发生插入操纵的话,就会执行相应的动作
  
下面的一个SQL语句表明要执行的动作
  

  
第二个SQL语句是往user表里插入数据,然后查询logtime表,自动加入了一条记录


页: [1]
查看完整版本: 9,mysql触发器