• MySql 触发器的新增、修改、删除的创建


     MySql 触发器与SQL server 触发器不同:

    SQL Server   使用 inserted、deleted 代表被触发的数据。

    MySQL NEW代表触发后的新数据行,Old代表当前触发数据被修改前的数据行

    一、Insert

    delimiter $$
    CREATE TRIGGER trigger _Name_insert   AFTER INSERT

    ON  test_tb  FOR EACH ROW
    BEGIN

    INSERT INTO testtb2 (a,b)
    VALUES
    (NEW.ID,NEW.datet);  #NEW 代表当前新增行

    END;
    $$

    DELIMITER ;

    二、Update

    delimiter $$
    CREATE TRIGGER trigger _Name_update  AFTER UPDATE

    ON  test_tb  FOR EACH ROW
    BEGIN

    INSERT INTO testtb2 (a,b)
    VALUES
    (NEW.ID,NEW.datet);  #NEW 代表当前修改后数据行,使用Old 则代表被修改行修改前的数据

    END;
    $$

    DELIMITER ;

    三、Delete

    delimiter $$
    CREATE TRIGGER trigger _Name_dalete  BEFORE DELETE

    ON  test_tb  FOR EACH ROW
    BEGIN

    INSERT INTO testtb2 (a,b)
    VALUES
    (NEW.ID,NEW.datet);  #NEW 代表当前删除行

    END;
    $$

    DELIMITER ;

    四、触发器的启用与禁用

    ALTER TABLE [表名] DISABLE TRIGGER [触发器名] --禁用触发器
    --需要执行的操作语句
    ALTER TABLE [表名] ENABLE TRIGGER [触发器名] --启用触发器

  • 相关阅读:
    study os
    open source [license]
    work serises------------patch
    interest in history-----------先秦
    python学习-----------argparse
    problems fixed
    work serises------------adb 使用
    零碎积累之--------------java环境相关
    Hash Table Five Finish
    Hash Table Four
  • 原文地址:https://www.cnblogs.com/limitpjz/p/10370541.html
Copyright © 2020-2023  润新知