zoukankan      html  css  js  c++  java
  • 触发器写法

    CREATE TABLE IF NOT EXISTS `wp_postmeta_log` (
      `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
      `table_name` varchar(15) DEFAULT NULL,
      `action` varchar(15) DEFAULT NULL,
      `meta_id` bigint(20) unsigned NOT NULL,
      `post_id` bigint(20) unsigned NOT NULL DEFAULT '0',
      `meta_key` varchar(255) DEFAULT NULL,
      `meta_value` longtext,
      `startDate` datetime DEFAULT NULL,
      `endDate` datetime DEFAULT NULL,
      PRIMARY KEY (`id`),
      KEY `post_id` (`post_id`),
      KEY `meta_key` (`meta_key`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=14894 ;
    
    DELIMITER //
    /* Trigger for INSERT */
    CREATE TRIGGER WpPostMetaInsert AFTER INSERT ON wp_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_postmeta', 'INSERT', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* Trigger for DELETE */
    CREATE TRIGGER WpPostMetaDelete AFTER DELETE ON wp_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
    
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_postmeta', 'DELETE', OLD.meta_id, OLD.post_id, OLD.meta_key, OLD.meta_value, N, NULL);
    END //
    
    /* Trigger for UPDATE */
    CREATE TRIGGER WpPostMetaUpdate AFTER UPDATE ON wp_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_postmeta', 'UPDATE', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* --- */
    
    /* Trigger for INSERT */
    CREATE TRIGGER WpPostMetaInsert2 AFTER INSERT ON wp_2_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_2_postmeta', 'INSERT', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* Trigger for DELETE */
    CREATE TRIGGER WpPostMetaDelete2 AFTER DELETE ON wp_2_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
    
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_2_postmeta', 'DELETE', OLD.meta_id, OLD.post_id, OLD.meta_key, OLD.meta_value, N, NULL);
    END //
    
    /* Trigger for UPDATE */
    CREATE TRIGGER WpPostMetaUpdate2 AFTER UPDATE ON wp_2_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_2_postmeta', 'UPDATE', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* --- */
    
    /* Trigger for INSERT */
    CREATE TRIGGER WpPostMetaInsert3 AFTER INSERT ON wp_3_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_3_postmeta', 'INSERT', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* Trigger for DELETE */
    CREATE TRIGGER WpPostMetaDelete3 AFTER DELETE ON wp_3_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
    
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_3_postmeta', 'DELETE', OLD.meta_id, OLD.post_id, OLD.meta_key, OLD.meta_value, N, NULL);
    END //
    
    /* Trigger for UPDATE */
    CREATE TRIGGER WpPostMetaUpdate3 AFTER UPDATE ON wp_3_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_3_postmeta', 'UPDATE', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* --- */
    
    /* Trigger for INSERT */
    CREATE TRIGGER WpPostMetaInsert4 AFTER INSERT ON wp_4_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_4_postmeta', 'INSERT', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* Trigger for DELETE */
    CREATE TRIGGER WpPostMetaDelete4 AFTER DELETE ON wp_4_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
    
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_4_postmeta', 'DELETE', OLD.meta_id, OLD.post_id, OLD.meta_key, OLD.meta_value, N, NULL);
    END //
    
    /* Trigger for UPDATE */
    CREATE TRIGGER WpPostMetaUpdate4 AFTER UPDATE ON wp_4_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_4_postmeta', 'UPDATE', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* --- */
    
    /* Trigger for INSERT */
    CREATE TRIGGER WpPostMetaInsert5 AFTER INSERT ON wp_5_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_5_postmeta', 'INSERT', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* Trigger for DELETE */
    CREATE TRIGGER WpPostMetaDelete5 AFTER DELETE ON wp_5_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
    
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_5_postmeta', 'DELETE', OLD.meta_id, OLD.post_id, OLD.meta_key, OLD.meta_value, N, NULL);
    END //
    
    /* Trigger for UPDATE */
    CREATE TRIGGER WpPostMetaUpdate5 AFTER UPDATE ON wp_5_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_5_postmeta', 'UPDATE', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* --- */
    
    /* Trigger for INSERT */
    CREATE TRIGGER WpPostMetaInsert6 AFTER INSERT ON wp_6_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_6_postmeta', 'INSERT', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    
    /* Trigger for DELETE */
    CREATE TRIGGER WpPostMetaDelete6 AFTER DELETE ON wp_6_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
    
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_6_postmeta', 'DELETE', OLD.meta_id, OLD.post_id, OLD.meta_key, OLD.meta_value, N, NULL);
    END //
    
    /* Trigger for UPDATE */
    CREATE TRIGGER WpPostMetaUpdate6 AFTER UPDATE ON wp_6_postmeta FOR EACH ROW BEGIN
       DECLARE N DATETIME;
       SET N = now();
    
       UPDATE wp_postmeta_log
          SET EndDate = N
        WHERE meta_id = OLD.meta_id
          AND EndDate IS NULL;
     
       INSERT INTO wp_postmeta_log (table_name, action, meta_id, post_id, meta_key, meta_value, StartDate, EndDate)
       VALUES ('wp_6_postmeta', 'UPDATE', NEW.meta_id, NEW.post_id, NEW.meta_key, NEW.meta_value, N, NULL);
    END //
    

      

  • 相关阅读:
    C# DataGridView显示行号的三种方法
    jQuery之前端国际化jQuery.i18n.properties
    大龄程序员的未来在何方
    【翻译】HTML5开发——轻量级Web Database存储库html5sql.js
    HBuilder webApp开发 Websql增删改查操作
    JS 互相调用iframe页面中js方法、VUE里 iframe 互调方法
    工具,百度编辑器 UEditor 使用实例化
    html 表格head头部不动 body部分滚动,每格宽同内容增加
    JS 正则收集(邮箱验证等)
    jQuery,title、仿title功能整理
  • 原文地址:https://www.cnblogs.com/freespider/p/11207260.html
Copyright © 2011-2022 走看看