Как заменить представление на таблицу с тем же названием?
Исторически так сложилось, что у нас на проекте сущестует представление из набора значение, выполняющее ровно ту же функцию, что и классическая таблица.
Create or alter view dbo.ViewName
as
select colOne, colTwo
from (values (1, 2),
(2, 3),
...
) as t(colOne, colTwo)
В данный момент появилась необходимость переделать это чудо на нормальную таблицу (основная цель - иметь возможность insert'ить данные, а не вбивать их руками в список values'ов). Проблема в том, что обращение к этому объекту в коде довольно много, поэтому создавать таблицу и менять ViewName на TableName во всём проекте не очень хочется.
В едином скрипте создать таблицу TempName на основе представления, грохнуть предствления, переименовать таблицу TempName -> ViewName - не вариант, поскольку вызывается оно крайне часто и мы повисним на блокировках.
Подскажите, есть ли какой-то способ решить мою проблему, не нарвавшись на проблемы, описанные выше?
Ответы (1 шт):
Отличным вариантом показался ответ @i-one, оставлю тут в форме ответа:
"А зачем вообще заменять представление на таблицу? Можно ведь создать таблицу и изменить представление так, чтобы оно ссылалось на эту таблицу"