Я пытаюсь понять, как эта команда SQL работает:Объяснение SQL: BEGIN, COMMIT flow?
BEGIN;
UPDATE post SET hits = hits + 1;
-- run from another session: DELETE FROM post WHERE hits = 10;
COMMIT;
Скажет, мы hahe строки с хитами = 9 и 10. Затем бежит этот запрос, а потом что? На что (и почему) будут выглядеть наши ряды?
Почему бы вам просто не проверить? Я имею в виду - для запуска 2 терминалов требуется 10 секунд и теста. И вы получите ценную информацию таким образом, чтобы научить вас больше. –
Но как протестировать его в этом очень небольшом количестве времени, когда транзакция активна (между BEGIN и COMMIT)? – tunarob
Начало транзакции, выпуск обновления. затем в другом psql запустите удаление. –