gpt4 book ai didi

mysql - 如果第一次更新执行成功则执行第二次更新

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

存储过程

CREATE DEFINER=`root`@`localhost` PROCEDURE `Sample`(IN itemId INT, IN itemQnty 
DOUBLE, IN invID INT)

BEGIN

DECLARE crntQnty DOUBLE;
DECLARE nwQnty DOUBLE;

SET crntQnty=(SELECT `QuantityOnHand` FROM `item` WHERE id=itemId);
SET nwQnty=itemQnty+crntQnty;
UPDATE `item` SET `QuantityOnHand`=nwQnty WHERE `Id`=itemId;

UPDATE `inventoryentry` SET `Status` = 1 WHERE `InventoryID`=invID AND
`ItemID`=itemId;


END$$

在此存储过程中,我有两个更新语句。如果第一次更新执行成功,则第二次执行。需要进行哪些更改?

最佳答案

第一次UPDATE后,您可以检查受ROW_COUNT()影响的行数。

如果 ROW_COUNT() 返回您想要的更新次数(可能 > 0),则仅触发第二个 UPDATE

您可以用 IF - END IF 包围第二个 UPDATE,检查受影响的行数。

关于mysql - 如果第一次更新执行成功则执行第二次更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10832827/

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