gpt4 book ai didi

MySql 在存储过程中的 IF THEN END IF 中使用 OR

转载 作者:行者123 更新时间:2023-11-29 07:44:10 24 4
gpt4 key购买 nike

MySql 存储过程中的 IF THEN ELSE END IF 中如何使用 OR

DECLARE userKey BOOL;

SET userKey = True;

IF makeKey != 'open' or makeKey != 'mask' THEN
SET userKey = False;
END IF;

IF (makeKey != 'open') or (makeKey != 'mask') THEN
SET userKey = False;
END IF;

IF (makeKey != 'open') || (makeKey != 'mask') THEN
SET userKey = False;
END IF;

Note: Not all the above are used together.

以上三个都不起作用。它们不会抛出错误,而只是评估为 false。

像平常一样调用存储过程myProc('open');我的 OR 出了问题。我怎样才能做到正确?

最佳答案

那是因为您想要AND,而不是OR:

IF makeKey != 'open' AND makeKey != 'mask' THEN
SET userKey = False;
END IF;

OR 永远为真。例如,如果 makekey = 'open',那么它肯定不等于 'mask'

这更容易写为:

IF makeKey NOT IN ('open', 'mask') THEN
SET userKey = False;
END IF;

关于MySql 在存储过程中的 IF THEN END IF 中使用 OR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28281490/

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