Oracle Database/Vues
Principe
modifierUne vue est une table virtuelle, utilisée pour afficher le résultat d'une requête fréquente, selon des permissions précises (ex : afficher des colonnes seulement pour un utilisateur).
Créer une vue
modifierLa vue suivante n'a pas grand intérêt car elle est redondante d'une table :
CREATE OR REPLACE VIEW MaVue1 AS
SELECT *
FROM client1
Actualiser une vue
modifierLes enregistrements de la vue s'actualisent automatiquement, mais si la structure d'une des tables appelées par la vue change, cette dernière renvoie une erreur. Il faut donc la mettre à jour avec :
ALTER VIEW MaVue1 COMPILE
Lister les vues
modifier SELECT * FROM USER_VIEWS
SELECT * FROM ALL_VIEWS
SELECT * FROM DBA_VIEWS
La colonne TEXT
affiche la requête SQL générant le vue.
Vues temporaires
modifierDepuis la version 10g, il est possible de définir une vue temporaire à la volée au milieu d'un script :
Exemple :
WITH PremieresLignes AS
(
SELECT id
FROM client1
WHERE id < 10
)
SELECT prenom, nom
FROM PremieresLignes, client1
WHERE PremieresLignes.id = client1.pl_id