Share via


Modificar vistas

Después de definir una vista, puede cambiar su definición en SQL Server 2012 sin tener que quitarla y volverla a crear si usa SQL Server Management Studio o Transact-SQL.

En este tema

  • Antes de empezar:

    Limitaciones y restricciones

    Seguridad

  • Para modificar una vista, use:

    SQL Server Management Studio

    Transact-SQL

Antes de empezar

Limitaciones y restricciones

  • La modificación de una vista no afecta a los objetos dependientes, como pueden ser los procedimientos almacenados o los desencadenadores, a menos que la definición de la vista cambie de tal modo que el objeto dependiente deje de ser válido.

  • Si una vista que está actualmente en uso se modifica mediante ALTER VIEW, el Motor de base de datos impone un bloqueo exclusivo de esquema sobre la vista. Cuando se concede el bloqueo, y no hay usuarios activos de la vista, el Motor de base de datos elimina todas las copias de la vista de la caché de procedimientos. Los planes existentes que hacen referencia a la vista permanecen en la caché, pero se vuelven a compilar cuando se llaman.

  • ALTER VIEW se puede aplicar a vistas indizadas; no obstante, quita incondicionalmente todos los índices de la vista.

Seguridad

Permisos

Para ejecutar ALTER VIEW, como mínimo, se necesita el permiso ALTER en OBJECT.

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar SQL Server Management Studio

Para modificar una vista

  1. En el Explorador de objetos, haga clic en el signo más situado junto a la base de datos donde se encuentra la vista y, a continuación, haga clic en el signo más situado junto a la carpeta Vistas.

  2. Haga clic con el botón secundario en la vista que desea modificar y seleccione Diseño.

  3. En el panel de diagrama del Diseñador de consultas, realice los cambios a la vista en una o más de las siguientes maneras:

    1. Active o desactive las casillas de cualquier elemento que desee agregar o quitar.

    2. Haga clic con el botón secundario en el panel de diagrama, seleccione Agregar tabla y, a continuación, seleccione las columnas adicionales que desea agregar a la vista en el cuadro de diálogo Agregar tabla.

    3. Haga clic con el botón secundario en la barra de título de la tabla que desea quitar y seleccione Quitar.

  4. En el menú Archivo, haga clic en Guardar view name.

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar Transact-SQL

Para modificar una vista

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

  2. En la barra de Estándar, haga clic en Nueva consulta.

  3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar. El ejemplo crea primero una vista y luego la modifica mediante ALTER VIEW. La cláusula WHERE se agrega a la definición de la vista.

    USE AdventureWorks2012 ;
    GO
    -- Create a view.
    CREATE VIEW HumanResources.EmployeeHireDate
    AS
    SELECT p.FirstName, p.LastName, e.HireDate
    FROM HumanResources.Employee AS e JOIN Person.Person AS  p
    ON e.BusinessEntityID = p.BusinessEntityID ; 
    
    -- Modify the view by adding a WHERE clause to limit the rows returned.
    ALTER VIEW HumanResources.EmployeeHireDate
    AS
    SELECT p.FirstName, p.LastName, e.HireDate
    FROM HumanResources.Employee AS e JOIN Person.Person AS  p
    ON e.BusinessEntityID = p.BusinessEntityID
    WHERE HireDate < CONVERT(DATETIME,'20020101',101) ; 
    GO
    

Para obtener más información, vea ALTER VIEW (Transact-SQL).

Icono de flecha usado con el vínculo Volver al principio[Top]