Запрос на выбор PostgreSQL для обновляемой таблицы - PullRequest
0 голосов
/ 29 ноября 2018

Я предполагаю, что этот вопрос задавался ранее, но, к сожалению, я не могу найти ответ на свой вопрос.

У меня есть таблица, и я использую оператор update для обновления столбца.Одновременно я выполняю запрос create table с оператором select, который извлекает данные из таблицы и столбца, который также обновляется.

Мои вопросы: может ли это привести к неправильным результатам в выводе оператора create table?заканчивается ли запрос update первым, затем выполняется create table с select?Я просто знаю, что оператор create table выполняется дольше.

1 Ответ

0 голосов
/ 29 ноября 2018

В PostgreSQL читатели никогда не блокируют писателей и наоборот.Это гарантируется реализацией MVCC в PostgreSQL, которая поддерживает старые версии строк.

Если транзакция обновления еще не завершена, транзакция чтения увидит старое значение, и результат будет согласованным.

Внутри PostgreSQL нет ничего, что могло бы заметно замедлить оператор SELECT, но, конечно, возможное объяснение конфликта ввода-вывода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...