MySQL5.6不支持一個表有多個UPDATE/DELETE/INSERT觸發器。 下邊看一個例子: 創建三個測試表:
mysql> create table t_trig_test_01 (name varchar(10)); Query OK, 0 rows affected (0.07 sec)
mysql> create table t_trig_test_02 (name varchar(10)); Query OK, 0 rows affected (0.03 sec)
mysql> create table t_trig_test_03 (name varchar(10)); Query OK, 0 rows affected (0.03 sec) 創建兩個觸發器: mysql> delimiter // mysql> create trigger trg_test_01 -> after insert on t_trig_test_01 -> for each row -> begin -> insert into t_trig_test_02 select * from t_trig_test_01; -> end; -> // Query OK, 0 rows affected (0.06 sec)
mysql> delimiter // mysql> create trigger trg_test_02 -> after insert on t_trig_test_01 -> for each row -> begin -> insert into t_trig_test_03 select * from t_trig_test_01; -> end; -> // Query OK, 0 rows affected (0.11 sec) 向表t_trig_test_01插入兩條測試數據:
mysql> insert into t_trig_test_01 values('steven'); Query OK, 1 row affected (0.01 sec)
mysql> insert into t_trig_test_01 values('steven'); Query OK, 1 row affected (0.01 sec) 查看三個表的數據:
mysql> select * from t_trig_test_01; +--------+ | name | +--------+ | steven | | steven | +--------+ 2 rows in set (0.00 sec)
mysql> select * from t_trig_test_02; +--------+ | name | +--------+ | steven | | steven | | steven | +--------+ 3 rows in set (0.00 sec)
mysql> select * from t_trig_test_03; +--------+ | name | +--------+ | steven | | steven | | steven | +--------+ 3 rows in set (0.00 sec) 達到了預期的結果。 |
免責聲明:本站部分文章和圖片均來自用戶投稿和網絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業用途,如果損害了您的權利,請聯系我們及時修正或刪除。謝謝!
始終以前瞻性的眼光聚焦站長、創業、互聯網等領域,為您提供最新最全的互聯網資訊,幫助站長轉型升級,為互聯網創業者提供更加優質的創業信息和品牌營銷服務,與站長一起進步!讓互聯網創業者不再孤獨!
掃一掃,關注站長網微信