Création et gestion des vues
Une vue présente un résultat de requête sous la forme d'une table. Elles peuvent remplacer les tables pour la plupart des utilisations. Les vues sont utiles en cas d'accès fréquent à des informations stockées dans plusieurs tables différentes.
Voir aussi :
-
"Sélectionner des données de table" pour plus d'informations sur les requêtes
-
Oracle Database Concepts, pour plus d'informations générales sur les vues
Création de vues
Pour créer des vues, utilisez l'outil SQL Developer Créer une vue ou l'instruction DDL CREATE VIEW.
Cette rubrique présente l'utilisation de ces deux méthodes pour la création des vues suivantes :
-
SALESFORCE, qui contient les noms et les salaires des employés du service des ventes,
-
EMP_LOCATIONS, qui contient les noms et emplacements de tous les employés
Cette vue est utilisée dans la section "Création d'un déclencheur INSTEAD OF".
Voir aussi :
-
Guide de l'utilisateur Oracle SQL Developer, pour plus d'informations sur l'utilisation de SQL Developer pour créer une vue
-
Oracle Database SQL Language Reference, pour plus d'informations sur l'instruction CREATE VIEW
Tutoriel : Création d'une vue à l'aide de l'outil Créer une vue
Ce tutoriel présente l'utilisation de l'outil Créer une vue pour créer la vue SALESFORCE.
Etapes de création de la Vue SALESFORCE à l'aide de l'outil Créer une vue :
-
Dans le cadre Connexions, développez hr_conn.
-
Dans la liste des types d'objet de schéma, cliquez avec le bouton droit de la souris sur Vues.
-
Dans la liste des choix, cliquez sur Nouvelle vue.
La fenêtre Créer une vue apparaît. Elle présente les valeurs par défaut pour une nouvelle vue.
-
Pour Schéma, acceptez la valeur par défaut HR.
-
Pour Nom, entrez
SALESFORCE. -
Si le panneau Requête SQL ne s'affiche pas, cliquez sur l'onglet Requête SQL.
-
Dans le volet Requête SQL, dans le champ Requête SQL :
-
Après
SELECT, entrez :FIRST_NAME || ' ' || LAST_NAME "Name", SALARY*12 "Annual Salary" -
Après
FROM, entrez :EMPLOYEES WHERE DEPARTMENT_ID = 80
-
-
Cliquez sur Vérifier la syntaxe.
-
Sous Résultats de la syntaxe, si ce message n'est pas
No errors found in SQL, revenez à l'étape 7 et corrigez les erreurs d'utilisation de la requête. -
Cliquez ensuite sur OK.
La vue SALESFORCE est créée. Pour le voir, développez Views dans le cadre Connections.
Pour afficher l'instruction CREATE VIEW permettant de créer cette vue, sélectionnez son nom et cliquez sur l'onglet SQL.
Voir aussi : Guide de l'utilisateur Oracle SQL Developer pour plus d'informations sur l'utilisation de SQL Developer pour créer des vues
Création d'une vue à l'aide de l'instruction CREATE VIEW
Cet exemple montre comment utiliser l'instruction CREATE VIEW pour créer la vue EMP_LOCATIONS, qui joint quatre tables.
L'instruction CREATE VIEW de l'Example 4-3 crée la vue EMP_LOCATIONS, qui joint quatre tables. (Pour plus d'informations sur les jointures, reportez-vous à la section "Sélection de données dans plusieurs tables".)
Exemple 4-3 Création de la vue EMP_LOCATIONS à l'aide de l'instruction CREATE VIEW
CREATE VIEW EMP_LOCATIONS AS
SELECT e.EMPLOYEE_ID,
e.LAST_NAME || ', ' || e.FIRST_NAME NAME,
d.DEPARTMENT_NAME DEPARTMENT,
l.CITY CITY,
c.COUNTRY_NAME COUNTRY
FROM EMPLOYEES e, DEPARTMENTS d, LOCATIONS l, COUNTRIES c
WHERE e.DEPARTMENT_ID = d.DEPARTMENT_ID AND
d.LOCATION_ID = l.LOCATION_ID AND
l.COUNTRY_ID = c.COUNTRY_ID
ORDER BY LAST_NAME;
Résultats :
View EMP_LOCATIONS created.
Voir aussi : Oracle Database SQL Language Reference pour plus d'informations sur l'instruction CREATE VIEW
Modification des requêtes dans les vues
Pour modifier la requête dans une vue, utilisez l'instruction LDD CREATE VIEW avec la clause OR REPLACE.
L'instruction CREATE OR REPLACE VIEW de l'Example 4-4 modifie la requête de la vue SALESFORCE.
Exemple 4-4 Modification de la requête dans la vue SALESFORCE
CREATE OR REPLACE VIEW SALESFORCE AS
SELECT FIRST_NAME || ' ' || LAST_NAME "Name",
SALARY*12 "Annual Salary"
FROM EMPLOYEES
WHERE DEPARTMENT_ID = 80 OR DEPARTMENT_ID = 20;
Résultats :
View SALESFORCE created.
Voir aussi : Oracle Database SQL Language Reference pour plus d'informations sur l'instruction CREATE VIEW avec la clause OR REPLACE
Tutoriel : Modification des noms de vue à l'aide de l'outil Rename
Ce tutoriel explique comment utiliser l'outil Renommer pour modifier le nom de la vue SALESFORCE.
Pour modifier le nom d'une vue, utilisez l'outil SQL Developer RENAME ou l'instruction RENAME. L'instruction DLL équivalente est la suivante :
RENAME SALESFORCE to SALES_MARKETING;
Procédure de modification de la vue SALESFORCE à l'aide de l'outil Renommer :
-
Dans le cadre Connexions, développez hr_conn.
-
Dans la liste des types d'objet de schéma, développez Vues.
-
Dans la liste des vues, cliquez avec le bouton droit de la souris sur SALESFORCE.
-
Dans la liste des choix, sélectionnez Renommer.
-
Dans le champ Nouveau nom de vue de la fenêtre Renommer, entrez
SALES_MARKETING. -
Cliquez sur Appliquer.
-
Dans la fenêtre de validation, cliquez sur OK.
Voir aussi : Oracle Database SQL Language Reference pour plus d'informations sur l'instruction RENAME
Suppression d'une vue
To drop a view, use either the SQL Developer Connections frame and Drop tool or the DDL statement DROP VIEW.
Ce tutoriel présente l'utilisation du cadre de connexion et de l'instrument Supprimer pour supprimer la vue SALES_MARKETING (modifiée à la rubrique "Tutoriel : Modification des noms de vue à l'aide des outils Modifier la vue"). L'instruction DLL équivalente est la suivante :
DROP VIEW SALES_MARKETING;
Pour supprimer la vue SALES_MARKETING à l'aide de l'outil Supprimer, procédez comme suit :
-
Dans le cadre Connexions, développez hr_conn.
-
Dans la liste des types d'objet de schéma, développez Vues.
-
Dans la liste des vues, cliquez avec le bouton droit de la souris sur SALES_MARKETING.
-
Dans la liste des choix, cliquez sur Supprimer.
-
Dans la fenêtre Déposer, cliquez sur Appliquer.
-
Dans la fenêtre de validation, cliquez sur OK.
Voir aussi : Oracle Database SQL Language Reference, pour plus d'informations sur l'instruction DROP VIEW