Индекс не обновляется в транзакции при вставке данных? - PullRequest
0 голосов
/ 03 марта 2012

У меня есть транзакция, которая выполняется с уровнем изоляции READ COMMITTED.В рамках транзакции я вставляю 10 000 строк в таблицу под названием «Документы» с DocId в качестве первичного ключа и 3 индекса на VendorId, CompanyId и ProgramId.Однако, похоже, что индексы не обновляются, пока я не фиксирую данные.Это правда?Есть ли способ заставить индексы обновляться внутри транзакции до вызова коммита?

1 Ответ

1 голос
/ 04 марта 2012

Это не так (если индексы не отключены). Неподтвержденные обновления индекса будут доступны только с уровнем изоляции READ UNCOMMITTED или с подсказкой nolock.

С чем это может быть проблемой? Вам действительно нужно видеть незафиксированные данные? Read uncommited обычно используется, чтобы избежать накладных расходов блокировки, чтобы не читать новые данные.

...