gpt4 book ai didi

mysql - 使用从查询获取的变量在触发器语句中进行比较时出现问题

转载 作者:行者123 更新时间:2023-11-29 15:30:16 25 4
gpt4 key购买 nike

我正在尝试在第一个表的触发器中使用第二个表中的属性。为此,我尝试将该值加载到变量中,然后将其用作比较。然而,每当我尝试测试该过程时,比较结果都是错误的。

DELIMITER $$

create trigger evolve_persona before update on phantom_thieves

for each row begin

set @t := (select tier from persona where pname = old.persona);

if((new.persona != old.persona) and (select cast(@t as unsigned) = '1')) then
set

new.st = old.st+10, new.ma = old.ma+10, new.en= old.en+10, new.ag= old.ag+10,

new.lu= old.lu+20;

end if;

end$$

DELIMITER ;

最佳答案

我看不出你的触发器有什么问题,但是,这在评论中写起来有点复杂。

请关注

SET @t = -1;

SELECT @t; -- returns -1

update phantom_thieves SET .....

SELECT @t; -should display at sometime 1

这似乎是第 1 层没有响应 1 的唯一问题,通过上面的内容,您可以看到您得到的结果。

关于mysql - 使用从查询获取的变量在触发器语句中进行比较时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58783867/

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