MySQL在另一个表上UPDATE之后触发INSERT到表?

时间:2016-02-02 15:15:14

标签: mysql sql database

我正在尝试创建一个更新另一个表后更新表的TRIGGER。我需要它,以便如果更新数字列中的数字,则需要将其记录在另一个表中。这就是我到目前为止所拥有的......

DELIMITER $$
CREATE TRIGGER record_update_to_user_number
    AFTER UPDATE ON user FOR EACH ROW
    IF (NEW.number != OLD.number) THEN//if new updated number is not equal t                                    to  number currently in the table then..

        DECLARE insertednumber TINYINT;  //variable to store updated num

        SET insertednumber = NEW.number;

        INSERT INTO user_changes (username, currentdate, numberchange)
        VALUES (current_user(), CURDATE(), insertednumber);
    END IF;
    DELIMITER ;

测试对表的更新:

UPDATE user SET number='69' WHERE number='68'; //test update to table

正如您所看到的,我正在尝试将新插入的用户编号存储到一个变量中,然后该变量将用于填充user_changes表的insertednumber列。非常感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:0)