Mysql 触发器写法

DELIMITER $$

USE `库名`$$

DROP TRIGGER /*!50032 IF EXISTS */ `trig_contract_status`$$

CREATE
    /*!50017 DEFINER = 'root'@'%' */
    TRIGGER `trig_contract_status` BEFORE UPDATE ON `表名` 
    FOR EACH ROW BEGIN
         IF
         old.SIGN_TIME > SYSDATE() 
        THEN
            SET new.CONTRACT_STATUS = 5;
    END IF;
END;
$$

DELIMITER ;


如果
SIGN_TIME 字段的时间大于当前时间 则 修改同一行的
CONTRACT_STATUS 为 5

 

DELIMITER || 
CREATE TRIGGER updatetbl_student
AFTER  INSERT   
ON  student
FOR EACH ROW 
BEGIN

INSERT INTO record (updateTable,updateContent,updateTime) VALUES('student', CONCAT(new.age,new.name), SYSDATE());
 
END  || 

DELIMITER ;

如果 student表 有新增数据
则 同时往record 表中插入记录

 

Mysql  日期+月:
DATE_ADD(日期, INTERVAL 月 MONTH)

Mysql  日期+年:
DATE_ADD(日期, INTERVAL  年  YEAR)

 

posted @ 2019-11-12 11:27  MagicAsa  阅读(271)  评论(0编辑  收藏  举报