En Oracle, puedo volver a crear una vista con una sola declaración, como se muestra aquí:
CREATE OR REPLACE VIEW MY_VIEW AS
SELECT SOME_FIELD
FROM SOME_TABLE
WHERE SOME_CONDITIONS
Como implica la sintaxis, esto eliminará la vista anterior y la volverá a crear con la definición que le haya dado.
¿Existe un equivalente en MSSQL (SQL Server 2005 o posterior) que hará lo mismo?
sql-server
JosephStyons
fuente
fuente
Puede usar 'SI EXISTE' para verificar si la vista existe y eliminar si existe.
fuente
Como referencia
SQL Server 2016 SP1+
, puede usar laCREATE OR ALTER VIEW
sintaxis.db <> demostración de violín
fuente
Yo suelo:
...
Recientemente agregué algunos procedimientos de utilidad para este tipo de cosas:
Entonces ahora escribo
Creo que hace que mis guiones de cambios sean un poco más legibles.
fuente
Normalmente uso algo como esto:
fuente
A partir de SQL Server 2016 tiene
Fuente de MSDN
fuente
Funciona bien para mí en SQL Server 2017:
https://www.mssqltips.com/sqlservertip/4640/new-create-or-alter-statement-in-
fuente
Puede usar ALTER para actualizar una vista, pero esto es diferente al comando de Oracle ya que solo funciona si la vista ya existe. Probablemente sea mejor con la respuesta de DaveK, ya que siempre funcionará.
fuente
En SQL Server 2016 (o más reciente) puede usar esto:
En versiones anteriores del servidor SQL, debe usar algo como
O, si no hay dependencias en la vista, puede soltarla y volver a crear:
fuente
CREATE OR REPLACE VIEW
sintaxis. La sintaxis correcta esCREATE OR ALTER VIEW
. ¿Cómo es que todos dicen que estáCREATE OR REPLACE
en todos los demás subprocesos SO que encuentro?