Table Virtuelle

Vous êtes ici : >> SQL / Table Virtuelle
Temps d'étude : 20 min. Niveau : Moyen.
Tags : Base de données, cours sql, Table Virtuelle
Fichier(s) utile(s) pour ce cours : bibliotheque.sql

Les tables virtuelles

Une table virtuelle se construit à partir d'une requête.

Généralement cela permet d'isoler des données resultant de jointure complexe et de relancer des opérations sur ces même résultats.

SQL / Table Virtuelle
	CREATE VIEW vue_emprunt AS
	SELECT a.prenom, l.titre, e.date_sortie
	FROM abonne a, livre l, emprunt e
	WHERE a.id_abonne = e.id_abonne
	AND l.id_livre = e.id_livre ;
	
Cette jointure reste simple, parfois les requêtes font plus de 20 lignes avec des jonctions précises

Une table virtuelle s'appelle aussi VUE (d'où l'utilisation du code CREATE VIEW).

Nous pouvons constater sa présence dans la liste des tables :

SHOW TABLES ;
Nous pouvons consulter les données à l'intérieur

SELECT * FROM vue_emprunt ;
Consulter l'emplacement de sauvegarde réél des views :

SELECT * FROM information_schema.views ;
Supprimer une vue (table virtuelle) :

DROP view vue_emprunt ;


fléche Pour récapituler

- Nous sauvegardons uniquement la requête permettant de mener aux résultats.

- Une table virtuelle est une table qui se construit à partir d'une autre; Habituellement pour créer une table nous avions besoin de "CREATE TABLE...", une table virtuelle se construit à partir d'une requête et de colonnes de tables existantes.

- Une table virtuelle est pratique pour isoler des résultats suite à une jointure compliquée, cela permettra de faire des requêtes plus simples directement sur les résultats de la jointure.

- Une table virtuelle est constamment à jour et possède les mêmes données que la table d'origine puisqu'elle garde seulement la requête en mémoire. (Par conséquent, si je change un enregistrement dans la table virtuelle, ça change également dans la table d'origine, et vice-versa).