SnappyData SQL PUT INTO не обновляет значения
Привет я использую SnappyData и пытаюсь обновить Table_A
с рядами из Table_B
:
Table_A(key1, key2, val, primary key(key1, key2)) -- cumulative results
Table_B(key1, key2, val, primary key(key1, key2)) -- new rows - updates
Так как Table_B
будет содержать (key1, key2) значения, которые уже существуют в Table_A
и должен заменить тех, кто в Table_A
, Поэтому я использую операторы " PUT INTO" вместо "INSERT INTO" для обновления совокупных результатов, хранящихся в Table_A
И мое заявление PUT INTO выглядит так:
PUT INTO Table_A
SELECT * from Table_B
Но строки в Table_B
не появляется в Table_A
,
Однако, если я вставлю значения напрямую:
PUT INTO Table_A
VALUES (1, 1, 1)
строка (1, 1, 1) отображается в Table_A
, И если я использую INSERT:
INSERT INTO Table_A
SELECT * from Table_B
Строки из Table_B
показать в Table_A
До тех пор, пока не возникнет ошибка двойного ключа и моя программа не закроется.
Я пробовал один столбец первичного ключа (то есть key1) и все еще не повезло
Так что я здесь не так делаю? Или "PUT INTO" не работает, или есть задержка в заявлениях "PUT INTO"?
ОБНОВИТЬ:
Я использовал локальный режим SnappyData, и я только что попробовал кластерный режим и обнаружил здесь некоторую ошибку (странно, что она не выдает ошибку в локальном режиме, а просто не работает тихо).
2 ответа
Вам просто нужно предоставить схему table_a в операторе put in. Поэтому она должна быть: snappy> вставлена в table_a (key1, val) select * from table_b;
Да, мы добавили документ для отслеживания, и документы должны быть обновлены соответствующим образом. Благодарю.