Я использую команду базы данных H2 MERGE
, но не понимаю ее часть documentation. Неисправляемая часть -Слияние в базе данных H2
Если таблица содержит автоинкрементный ключ или столбец идентификации, а строка обновлена, сгенерированный ключ устанавливается в 0; в противном случае он устанавливается на новый ключ
я выполнил следующие SQL-операторы, чтобы попытаться понять, что
CREATE TABLE h2_test (id INTEGER PRIMARY KEY AUTO_INCREMENT, int INTEGER)
INSERT INTO h2_test (int) VALUES (42)
INSERT INTO h2_test (int) VALUES (43)
INSERT INTO h2_test (int) VALUES (44)
MERGE INTO h2_test (int) KEY(int) VALUES (45)
MERGE INTO h2_test (id, int) VALUES (5, 46)
MERGE INTO h2_test (id, int) VALUES (2, 47)
INSERT INTO h2_test (int) VALUES (48)
таблица выглядит следующим образом после вышеуказанных заявлений
+---------+
| ID INT |
+---------+
| 1 42 |
| 2 47 |
| 3 44 |
| 4 45 |
| 5 46 |
| 6 48 |
+---------+
Так нет независимо от того, включаю ли я первичный ключ в MERGE
, он увеличивается, если результат приводит к добавлению записи. & оставляет уже существующее значение untouc hed в случае, если результат приводит к обновлению записи.
Было бы замечательно, если бы кто-нибудь может пролить свет на то, что цитируемый часть документации пытается выразить