Как узнать, сделал ли Hsqldb "MERGE INTO" вставку или обновление - PullRequest
0 голосов
/ 13 марта 2020

Возможно ли, что процедура, использующая MERGE INTO, возвращает статус выполненного действия (вставлено или обновлено).

Я использую Hsqldb 2.5.0.

1 Ответ

0 голосов
/ 14 марта 2020

Это невозможно.

Вам необходимо выполнить инструкцию SELECT, чтобы подсчитать число затронутых строк перед MERGE. Первый пример, приведенный для MERGE в Руководстве, обновляет одну строку и вставляет две строки:

http://hsqldb.org/doc/2.0/guide/dataaccess-chapt.html#dac_merge_statement

Вы можете выполнить приведенный ниже оператор SELECT, чтобы получить число обновляемые строки:

SELECT COUNT(*) FROM t WHERE t.id in (1, 14, 5)
...