Ваш вопрос зависит от СУБД.
В большинстве случаев идентификатор строки является суррогатом адреса строки в пространстве базы данных.Некоторые СУБД хранят фактический адрес в индексе, а не rowid, даже если все, что вы видите, это rowid.Если СУБД хранит идентификатор строки в индексе, некоторый механизм все же должен преобразовать его в адрес, прежде чем можно будет выполнить прямой поиск строки.
Почти в любой СУБД выполняется обновление таблицы и обновление доИндекс будет сделан в контексте той же транзакции.Это означает, что для вас не имеет значения, обновляется ли индекс до таблицы или таблица обновляется до индекса.
Для единственной СУБД, внутренности которой я знаю, записи индекса обновляются в строкепо строке, сразу после обновления самой строки.И записи индекса содержат адреса строк, а не идентификаторы строк.
Мне никогда не приходилось беспокоиться об этом на практике, потому что к концу транзакции все было сделано в любом случае.
Ни в одном из этих случаев я бы не назвал это "перестройкой индекса".Это действительно обновление индекса.«Перестройка индекса» предполагает массовую переписку.