Recherche…


Remarques

Les vues sont des requêtes stockées qui peuvent être interrogées comme des tables régulières. Les vues ne font pas partie du modèle physique de la base de données. Toute modification appliquée à la source de données d'une vue, telle qu'une table, sera également reflétée dans la vue.

Créer une vue

CREATE VIEW dbo.PersonsView
AS
SELECT
    name, 
    address 
FROM persons;

Créer ou remplacer une vue

Cette requête supprime la vue - si elle existe déjà - et en crée une nouvelle.

IF OBJECT_ID('dbo.PersonsView', 'V') IS NOT NULL
    DROP VIEW dbo.PersonsView
GO

CREATE VIEW dbo.PersonsView
AS
SELECT
    name, 
    address 
FROM persons;

Créer une vue avec liaison de schéma

Si une vue est créée AVEC SCHEMABINDING, la ou les tables sous-jacentes ne peuvent pas être supprimées ou modifiées de telle manière qu'elles casseraient la vue. Par exemple, une colonne de table référencée dans une vue ne peut pas être supprimée.

CREATE VIEW dbo.PersonsView
WITH SCHEMABINDING
AS
SELECT 
    name,
    address
FROM dbo.PERSONS  -- database schema must be specified when WITH SCHEMABINDING is present

Les vues sans liaison de schéma peuvent se casser si leur ou leurs tables sous-jacentes changent ou sont supprimées. L'interrogation d'une vue interrompue génère un message d'erreur. sp_refreshview peut être utilisé pour garantir que les vues existantes sans liaison de schéma ne sont pas endommagées.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow