CREATE [TEMPORARY] TABLE nouvelle_table
SELECT ...
Le type des colonnes de la nouvelle table sera déduit des colonnes sélectionnées. Par contre, la plupart des caractéristiques des
colonnes sélectionnées seront perdues :
les index ;
les clés (primaires ou étrangères) ;
l'auto-incrémentation.
Les valeurs par défaut et les contraintes NOT NULL seront par contre conservées.
Exemple : suppression puis recréation d'une table temporaire Animal_copy contenant tous les rats de la table Animal.
Code : SQL
DROP TABLE Animal_copy;
CREATE TEMPORARY TABLE Animal_copy
SELECT *
FROM Animal
WHERE espece_id = 5;
DESCRIBE Animal;
DESCRIBE Animal_copy;
Field
Type
Null Key Default
Extra
id
smallint(6) unsigned NO PRI
NULL auto_increment
sexe
char(1)
YES
NULL
date_naissance datetime
NO
NULL
nom
varchar(30)
YES MUL NULL
commentaires
text
YES
NULL
espece_id
smallint(6) unsigned NO MUL NULL
race_id
smallint(6) unsigned YES MUL NULL
mere_id
smallint(6) unsigned YES MUL NULL
pere_id
smallint(6) unsigned YES MUL NULL
disponible
tinyint(1)
YES
1
Field
Type
Null Key Default Extra
id
smallint(6) unsigned NO
0
sexe
char(1)
YES
NULL
date_naissance datetime
NO
NULL
nom
varchar(30)
YES
NULL
commentaires
text
YES
NULL
espece_id
smallint(6) unsigned NO
NULL
Partie 6 : Au-delà des tables classiques : vues, tables temporaires et vues matérialisées
359/414
www.openclassrooms.com
Précédent

- 359/413

Suivant