gpt4 book ai didi

mysql - 在 mysql 表上使用触发器

转载 作者:行者123 更新时间:2023-11-29 03:04:40 29 4
gpt4 key购买 nike

我正在下表中创建一个触发器,

  CREATE TABLE test( id int auto_increment primary key,
name varchar(40),
debit decimal(19,2) default "0.00",
fee decimal(19,2) default "0.00",
balance decimal(19,2) default "0.00")
ENGINE=INNODB;

下面也是触发代码。

CREATE TRIGGER update_test BEFORE INSERT ON test t FOR EACH ROW
(select debit from test d where d.id="1")
SET new.balance=30 + d.debit;

这个触发器假设在插入测试表时更新测试表(余额列)。触发器假设从测试表中选择借方值并在更新测试表中的余额列之前添加 30。但是上面的这个查询不起作用。它一直给我这个错误

ERROR 1415 (0A000): Not allowed to return a result set from a trigger

我需要有关如何确定问题所在的帮助。提前致谢。

最佳答案

这会起作用。

CREATE TRIGGER update_test BEFORE INSERT ON test FOR EACH ROW
set @d=(select debit from test where id="1"),
new.balance= 30 + Coalesce(@d,0);

上面的代码可以运行,试试看,告诉我你的 react 。

关于mysql - 在 mysql 表上使用触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17723278/

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