В Oracle я могу воссоздать представление с помощью одного оператора, как показано здесь:
CREATE OR REPLACE VIEW MY_VIEW AS
SELECT SOME_FIELD
FROM SOME_TABLE
WHERE SOME_CONDITIONS
Как следует из синтаксиса, это отбросит старое представление и воссоздает его с любым определением, которое я дал.
Есть ли эквивалент в MSSQL (SQL Server 2005 или новее), который будет делать то же самое?
sql-server
JosephStyons
источник
источник
Вы можете использовать IF EXISTS, чтобы проверить, существует ли представление, и удалить его, если он существует.
источник
Для справки
SQL Server 2016 SP1+
вы можете использоватьCREATE OR ALTER VIEW
синтаксис.db <> демо скрипта
источник
Я использую:
...
Недавно я добавил несколько служебных процедур для такого рода вещей:
Итак, теперь я пишу
Я думаю, это делает мои скрипты изменений более читабельными
источник
Обычно я использую что-то вроде этого:
источник
Начиная с SQL Server 2016 у вас есть
Источник MSDN
источник
У меня он отлично работает на SQL Server 2017:
https://www.mssqltips.com/sqlservertip/4640/new-create-or-alter-statement-in-
источник
Вы можете использовать ALTER для обновления представления, но это отличается от команды Oracle, поскольку она работает, только если представление уже существует. Вероятно, лучше с ответом DaveK, поскольку он всегда будет работать.
источник
В SQL Server 2016 (или новее) вы можете использовать это:
В более старых версиях SQL-сервера вы должны использовать что-то вроде
Или, если в представлении нет зависимостей, вы можете просто отбросить его и воссоздать:
источник
CREATE OR REPLACE VIEW
синтаксис. Правильный синтаксисCREATE OR ALTER VIEW
. Как получается, что все говорят, что это естьCREATE OR REPLACE
во всех других ТАКИХ