insert
trigger
中引用NEW.id
时,有两种主要情况。在第一种情况下,你会得到正确的id
值,这是你期望的结果。在第二种情况下,它是null
,这就是发生的情况。trigger
���在insert
之前还是之后运行。在insert
之前,id
不存在,因为记录尚未创建。在insert
之后,id
存在。简而言之,代码如下:DELIMITER //
CREATE TRIGGER PROOFOFCONCEPT
AFTER INSERT
ON EACH ROW
BEGIN
INSERT INTO tbl_measures(user_id)
VALUES (NEW.id);
END; //
DELIMITER ;
CREATE TRIGGER `after_members_insert` AFTER INSERT ON `tbl_users`
FOR EACH ROW BEGIN
INSERT INTO tbl_measures(user_id)
VALUES(new.id);
END