У меня есть хранимая процедура, которая вставляет запись с использованием 'insert ignore'.
Это выдаст предупреждение, если запись уже существует, но код не будет поврежден.
Однако, используя оператор.getWarnings () в моем java-коде дает мне null для вызываемого оператора, тогда как он прекрасно работает для подготовленного оператора.
Во-вторых, я создал еще один сохраненный процесс с использованием предупреждений show.
Если выполняется из IDE msql, он отлично показывает предупреждения в консоли, но не работает, если вызывается из Java.
Как я могу перехватить предупреждения, приводящие к хранимому процессу через Java-программу?
пример хранимой процедуры:
Blockquote
CREATE PROCEDURE createOrderByRequestId
(В запросе BIGINT, в createTime TIMESTAMP, в INTIMALTAMP TIMESTAMP, IN partnerAdapterId INT, IN providerOrderId VARCHAR (100), IN partnerOrderId VARCHAR 100 (), В VARCHAR OrderStatus (100), IN BALLAmount FLOAT, INNIGITALTIME BIGINT, IN PosCreationTime BIGINT, OUT ProviderResultVARCHAR (100), выход ProviderResult2 VARCHAR (100)) НАЧАТЬ
1 021 * ВСТАВИТЬ ИГНОРИРУЙТЕ НА orders_demo (orderRequestId, createTime, modifiedTime, partnerAdapterId, providerOrderId, partnerOrderId, OrderStatus, billAmount, orderNotificationTime, posCreationTime) ЗНАЧЕНИЯ (RequestID, createTime,updatedTime, partnerAdapterId, providerOrderId, partnerOrderId, orderStatus, billAmount, orderNotificationTime, posCreationTime);
SHOW ПРЕДУПРЕЖДЕНИЯ;
ВЫБРАТЬ @ProviderResult AS RETURNED_SQLSTATE * MEXT_EXT_TING_STRING_STRING * MEXT_STR_TOOT * MEXRATE * MEXT_RED_NEST_STAR * MEXID$$
Цитата