gpt4 book ai didi

MYSQL存储过程: How to delete a just updated record

转载 作者:行者123 更新时间:2023-11-29 08:41:24 25 4
gpt4 key购买 nike

我有两个表名称:registeredList 和 deregisteredlist。现在,当用户从“registeredlist”表中注销时,触发器会将其信息更新到注销表并从注册表中删除该记录。在我的下面的过程中,我可以正确更新它,但无法从注册表中删除用户。我的过程:

DELIMITER $$
USE `abc_db`$$
DROP TRIGGER `UnsubscriberListTrigger`$$
CREATE
TRIGGER `UnsubscriberListTrigger` AFTER UPDATE ON `registeredlist` FOR EACH ROW
BEGIN
IF (old.SubscriberStatus='registered') THEN
INSERT INTO deregisteredlist(name,SubscriberStatus,DeRegistrationDate)
VALUES(old.name,'Deregistered',NOW());

DELETE from registeredlist where old.id=new.id;/???????/I am getting problem here
END IF;
END $$
DELIMITER ;

提前致谢。

最佳答案

我认为您所需要的只是更改 DELETE 语句中的 WHERE 。它应该是这样的:

DELETE from registeredlist where id=old.id; // (or new.id cause in this case old.id is equal to new.id)

...因为您想将其与 id 列进行匹配。

更新:

另一种可能性是:- 在 deregisteredlist 上创建 AFTER INSERT TRIGGER,这将在 registeredlist 中执行 DELETE。这样您就不会收到该错误。

关于MYSQL存储过程: How to delete a just updated record,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13704438/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com