当前位置: 首页 > 面试题库 >

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

蓟清野
2023-03-14
问题内容

储存程序

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语句。如果第一次更新成功执行,然后第二次执行。需要进行哪些更改?


问题答案:

在第一个之后,UPDATE您可以检查受影响的行数ROW_COUNT()

如果ROW_COUNT()返回的结果是所需的更新数量(可能> 0),则仅触发第二个UPDATE

可以UPDATE通过IF - END IF检查受影响的行数来包围第二个。



 类似资料:
  • 问题内容: 我正在尝试使用jaxb- maven插件使用JAXB将多个XSD转换为不同包中的POJO。我已将其设置为使用多个执行块,然后执行第一个执行块,然后出现一条消息:模式或绑定文件中未检测到更改 这是我pom.xml的摘录: 这是我收到的错误消息: 如果我交换执行块,则第一个总是执行,其余两个块得到相同的消息。 关于如何解决这个问题的任何想法? 问题答案: 通过升级到版本1.6进行了修复 和

  • 如果我在maven deploy插件中调用两个部署文件执行 然后,第一次执行的javadoc上传也在第二次执行中执行(查找basis-vs-bo-20.0.2-20161103.130940-25-javadoc.jar): 为什么参数javadoc会导致第二次执行再次上载同一个文件?

  • fileInput包含一个大约30行的csv文件,我只想访问第二行。 我需要访问第二行而不是第一行(第一行包含列名称)<代码>行[1]给出了

  • 我使用Quartz1.5.2和Spring3.2.1来做调度器任务,在我的应用程序中,我需要在某个时候重新安排任务,但我发现每次重新安排任务时,它都会在第一次执行两次。 下面是我的Quartz+Spring配置文件: 我把它作为一个web应用程序,下面是web.xml的代码:

  • 问题内容: 在Scipy文件中写道: 函数零将创建一个由零组成的数组,函数一个将创建由零组成的数组,函数空将创建一个数组,其初始内容是随机的,并取决于内存的状态。默认情况下,创建的数组的dtype为float64。 所以我运行了这段代码: 返回: 因此,它返回一个随机数,并且一切都很好。 但是,当我第二次运行该代码(在该shell中)时,它返回一个零数组! 问题是,为什么第二次返回零数组(而不是随

  • 我需要在GUI(JavaXF)和oracle12c数据库中的JavaStoredProcedure中处理XML文件。 在GUI中,我想使用属性绑定。因此,我配置了来生成带有属性的源代码。 所以我现在拥有的是这样的: 接下来我要做的是在maven-compiler-plugin的不同执行中,将和这两个文件夹分别编译到不同的输出文件夹和。 但我无法为一次执行更改maven-compiler-plugi