9,mysqlトリガ


1,フリップフロップはMYSQLの基本命令イベントによって何らかの特定の操作をトリガし,
トリガには2つの重要な要素があります.1つはAction(動作)で、2つはCondition(条件)です.
トリガはConditoinの条件を満たす時に相応の動作を実行して、この動作は一連のSQL文です
2、トリガの作成

  
  
  
  
  1. mysql> create trigger autolog before insert 
  2.     -> on user for each row  
  3.     -> insert into logtime values(null,now());  
  4.     -> //  
  5. Query OK, 0 rows affected (0.12 sec)  
  6.  
  7. mysql> insert into user values(null,'123','123',now())//  
  8. Query OK, 1 row affected (0.06 sec)  
  9.  
  10. mysql> select * from logtime;  
  11.     -> //  
  12. +----+---------------------+  
  13. | id | savetime            |  
  14. +----+---------------------+  
  15. |  1 | 2012-11-05 18:35:02 |  
  16. +----+---------------------+  
  17. 1 row in set (0.00 sec) 
  trigger  autolog  before insert before after, on user each row user user , SQL SQL user , logtime ,

3、すべてのトリガーを表示

  
  
  
  
  1. mysql> show triggers  
  2.     -> //  
  3. +---------+--------+-------+----------------------------------------+--------+---------+------------  
  4. ----------------------------------------------------+----------------+----------------------+-------  
  5. ---------------+--------------------+  
  6. Trigger | Event  | Table | Statement                              | Timing | Created | sql_mode  
  7.                                                     | Definer        | character_set_client | collat  
  8. ion_connection | Database Collation |  
  9. +---------+--------+-------+----------------------------------------+--------+---------+------------  
  10. ----------------------------------------------------+----------------+----------------------+-------  
  11. ---------------+--------------------+  
  12. | autolog | INSERT | user  | insert into logtime values(null,now()) | BEFORE | NULL    | STRICT_TRAN  
  13. S_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | root@localhost | utf8                 | utf8_g  
  14. eneral_ci      | utf8_general_ci    |  
  15. +---------+--------+-------+----------------------------------------+--------+---------+------------  
  16. ----------------------------------------------------+----------------+----------------------+-------  
  17. ---------------+--------------------+  
  18. 1 row in set (0.01 sec) 

4、トリガの削除

  
  
  
  
  1. mysql> drop trigger autolog//  
  2. Query OK, 0 rows affected (0.01 sec)