Modification d'une vue et attribution d'un nouveau nom
Dès qu'une vue a été définie, vous pouvez la renommer ou modifier sa définition sans la supprimer ni être obligé de la recréer. Le fait de supprimer et recréer une vue entraîne la perte des autorisations associées à la vue. Lorsque vous renommez une vue, respectez les consignes suivantes :
La vue à renommer doit se trouver dans la base de données actuelle.
Le nouveau nom doit se conformer aux règles en vigueur pour les identificateurs.
Vous pouvez renommer uniquement les vues que vous êtes autorisé à modifier.
Le propriétaire de base de données peut modifier le nom des vues de n'importe quel utilisateur.
Modifier une vue n'affecte aucun des objets qui en dépendent, tels que les procédures stockées ou les déclencheurs, à moins que la définition de la vue ne change de telle manière qu'un objet sous-jacent ne soit plus valide. Par exemple, une vue employees_view de la base de données AdventureWorks2008R2 est définie comme suit :
CREATE VIEW dbo.employees_view
AS
SELECT BusinessEntityID FROM HumanResources.Employee;
La procédure stockée employees_proc est définie comme suit :
CREATE PROC dbo.employees_proc
AS
SELECT EmployeeID from employees_view;
employees_view est modifiée de manière à extraire la colonne LastName au lieu de BusinessEntityID :
ALTER VIEW dbo.employees_view
AS
SELECT LastName FROM Person.Person AS p
JOIN HumanResources.Employee AS e
ON p.BusinessEntityID = e.BusinessEntityID;
L'exécution de employees_proc échoue alors car la colonne BusinessEntityID ne figure plus dans la vue.
Vous pouvez également modifier une vue afin de chiffrer sa définition ou de faire en sorte que toutes les instructions de modification de données exécutées sur la vue adhèrent aux critères définis dans l'instruction SELECT définissant la vue. Pour plus d'informations, consultez Conception et mise en œuvre de vues.
Pour modifier une vue
Pour renommer une vue
Notes
Renommer une vue ne modifie pas le nom de la vue dans le texte de sa définition. Pour remédier à cela, vous devez modifier la vue directement.