Tables temporaires
Ce chapitre est consacré aux tables temporaires qui, comme leur nom l'indique, sont des tables ayant une durée de vie très
limitée. En effet, tout comme les variables utilisateur ou les requêtes préparées, les tables temporaires n'existent que dans la
session qui les a créées. Dès que la session se termine (déconnexion volontaire ou accidentelle), les tables temporaires sont
supprimées.
Nous verrons en détail dans ce chapitre comment se comportent ces tables temporaires, et à quoi elles peuvent servir.
De plus, nous verrons deux nouvelles manières de créer une table (temporaire ou non), en partant de la structure et/ou des
données d'une ou plusieurs autres tables.
Principe, règles et comportement
On l'a dit, une table temporaire est une table qui n'existe que dans la session qui l'a créée. En dehors de ça, c'est une table
presque normale. On peut exécuter sur ces tables toutes les opérations que l'on exécute sur une table classique : insérer des
données, les modifier, les supprimer, et bien sûr les sélectionner.
Création, modification, suppression d'une table temporaire
Pour créer, modifier et supprimer une table temporaire, on utilise les mêmes commandes que pour les tables normales.
Création
Pour créer une table temporaire, on peut utiliser tout simplement CREATE TABLE en ajoutant TEMPORARY, pour préciser qu'il
s'agit d'une table temporaire.
Exemple : création d'une table temporaire TMP_Animal.
Code : SQL
CREATE TEMPORARY TABLE TMP_Animal (
id INT UNSIGNED PRIMARY KEY,
nom VARCHAR(30),
espece_id INT UNSIGNED,
sexe CHAR(1)
);
DESCRIBE TMP_Animal;
Field
Type
Null Key Default Extra
id
int(10) unsigned NO PRI NULL
nom
varchar(30)
YES
NULL
espece_id int(10) unsigned YES
NULL
sexe
char(1)
YES
NULL
Visiblement, la table a bien été créée. Par contre, si l'on tente de vérifier cela en utilisant SHOW TABLES plutôt que DESCRIBE
TMP_Animal, on ne trouvera pas la nouvelle table temporaire dans la liste des tables. Et pour cause, seules les tables
permanentes (et les vues) sont listées par cette commande.
Modification
Pour la modification, nul besoin du mot-clé TEMPORARY, on utilise directement ALTER TABLE, comme s'il s'agissait d'une
table normale.
Exemple : ajout d'une colonne à TMP_Animal.
Code : SQL
ALTER TABLE TMP_Animal
Partie 6 : Au-delà des tables classiques : vues, tables temporaires et vues matérialisées
352/414
www.openclassrooms.com
Précédent

- 352/413

Suivant