![](/img/trans.png)
[英]SQL - select where condition is true but delete if there is another row that breaks condition
[英]Database-Trigger to Delete row where condition True:
我需要触发一个删除一行,其中表paym
两列table1
和table2
是不是空的。
下表中的示例:表: paym
ID username table1 Table2
+-------+-------------+-------------+-----------+
| 1 | John | Value | Value |
+-------+-------------+-------------+-----------+
| 2 | Alex | Null | Null |
+-------+-------------+-------------+-----------+
条件为True:删除行后:
ID username table1 Table2
+-------+-------------+-------------+-----------+
| 2 | Alex | Null | Null |
+-------+-------------+-------------+-----------+
我的尝试是:(不工作)
CREATE trigger DeleteROW
AFTER UPDATE ON paym
FOR EACH ROW
BEGIN
IF (NEW.table1 IS NOT NULL AND NEW.table2 IS NOT NULL) THEN
DELETE
FROM
paym WHERE table1 and table2 IS NOT NULL ;
END IF;
END
触发器无法修改正在运行的表。
您应该创建一个存储过程来处理它,并调用它而不是DELETE
命令...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.