我有两张表,一张列出条目,另一张列出结果。
我正在尝试在条目表上创建一个 After 触发器,该触发器在结果表中创建相应的记录,如果该记录的所有条目信息都已完成。如果应创建结果表,则列队列不为 NULL。
IF (NEW.fleet IS NOT NULL) THEN
INSERT INTO race_results (race_id,yr,race_num,owner_id,checked_in,flt)VALUES(NEW.race_id,NEW.yr,NEW.race_num,NEW.owner_id,"N",NEW.fleet)ON DUPLICATE KEY UPDATE flt =NEW.fleet;
END IF
此代码运行良好,除非它在 NEW.fleet 等于 NULL 的行上运行时会引发 #1329 错误。
提前致谢。
根据输入,这是我最近的尝试。仍然不工作 桌球俱乐部只是一个不同的桌子,可以在最后进行成功的选择。
BEGIN
DECLARE clb INT(10);
declare exit handler for not found
IF (NEW.fleet IS NOT NULL) THEN
INSERT INTO race_results (race_id,yr,race_num,owner_id,checked_in,flt)
VALUES(NEW.race_id,NEW.yr,NEW.race_num,NEW.owner_id,"N",NEW.fleet)
ON DUPLICATE KEY UPDATE flt =NEW.fleet;
END IF;
SELECT club_id INTO clb from clubs WHERE club_id=1;
END