如何从mysql存储过程中捕获警告消息

时间:2018-10-03 07:46:55

标签: mysql stored-procedures warnings

我有一个存储过程,它使用“插入忽略”插入记录。

如果记录已经存在但代码不会中断,这将发出警告。

但是,在我的Java代码中使用statement.getWarnings()可以为可调用语句提供null,而对于已准备好的语句则可以正常工作。

其次,我使用显示警告创建了另一个存储过程。

如果从msql IDE执行,它会在控制台中完美显示警告,但是如果从Java调用则无法正常工作。

如何捕获通过Java程序导致存储过程的警告?

示例存储过程:

  

Blockquote

创建过程createOrderByRequestId( 在requestId BIGINT中, 在createTime TIMESTAMP中, 在ModifyTime TIMESTAMP中, 在partnerAdapterId INT中, IN providerOrderId VARCHAR(100), 在partnerPartId VARCHAR(100)中, 在orderStatus VARCHAR(100)中, 在billAmount FLOAT中, 在orderNotificationTime BIGINT中, IN posCreationTime BIGINT,OUT ProviderResult VARCHAR(100),OUT ProviderResult2 VARCHAR(100)) 开始

将更多信息插入到orders_demo中(orderRequestId,createTime,modifiedTime,partnerAdapterId,providerOrderId,partnerOrderId,orderStatus,billAmount,orderNotificationTime,posCreationTime) VALUES(requestId,createTime,modifiedTime,partnerAdapterId,providerOrderId,partnerOrderId,orderStatus,billAmount,orderNotificationTime,posCreationTime);

显示警告;

选择@ProviderResult AS RETURNED_SQLSTATE,@ ProviderResult2 AS MESSAGE_TEXT;

END $$

  

Blockquote

0 个答案:

没有答案