У нас есть хранимая процедура, которая ОБНОВЛЯЕТ таблицу, основанную на некоторых условиях. И в той же хранимой процедуре вставляет в ту же таблицу при некоторых других условиях. Теперь эта таблица назначения имеет кучу связанных индексированных представлений, что замедляет обновления и удаления. Что мы делаем сейчас, так это отключаем индексы в представлениях до загрузки и перестраиваем их после. Перестройка занимает около получаса, но если мы не отключим это, индексированные представления перестраиваются один раз для обновления и один раз для вставки.
Мои вопросы:
Обновления и вставки, воссоздают ли они представления для каждой строки или для всех строк, на которые влияет UPDATE / INSERT
Существует ли способ пакетной вставки и обновлений, чтобы индексированное представление срабатывало только один раз после всех INSERT
и всех UPDATE
Индексированные представления получают доступ к одному из столбцов в таблице, которая обновляется / вставляется. Теперь это индексированное представление воссоздается, даже если этот конкретный столбец сам не изменился, но какой-то другой столбец в таблице был обновлен.