2 Chat
Felis silvestris
150.00
3 Tortue d'Hermann Testudo hermanni
140.00
4 Perroquet amazone Alipiopsitta xanthops 700.00
5 Rat brun
Rattus norvegicus
10.00
6 Perruche terrestre Pezoporus wallicus
20.00
Code : Console
Empty set (0.00 sec)
Il n'y a pas de gerbille dans nos espèces, puisque l'insertion a été annulée. Par contre, la création de la table TMP_Test, bien que
faite à l'intérieur d'une transaction annulée, a bel et bien été exécutée. On n'obtient en effet aucune erreur lorsque l'on fait une
sélection sur cette table (mais bien un résultat vide, puisqu'il n'y a aucune donnée dans cette table).
Méthodes alternatives de création des tables
Les deux méthodes de création de tables présentées ici sont valables pour créer des tables normales ou des tables temporaires.
Elles se basent toutes les deux sur des tables et/ou des données préexistantes.
Le choix de présenter ces méthodes dans le cadre des tables temporaires s'explique par le fait qu'en général, celles-ci sont créées
pour stocker des données provenant d'autres tables, et par conséquent, sont souvent créées en utilisant une de ces deux
méthodes.
Créer une table à partir de la structure d'une autre
Il est possible de créer la copie exacte d'une table, en utilisant la commande suivante :
Code : SQL
CREATE [TEMPORARY] TABLE nouvelle_table
LIKE ancienne_table;
Les types de données, les index, les contraintes, les valeurs par défaut, le moteur de stockage, toutes les caractéristiques de
ancienne_table seront reproduites dans nouvelle_table. Par contre, les données ne seront pas copiées : nouvelle_table sera
vide.
Exemple : reproduction de la table Espece.
Code : SQL
CREATE TABLE Espece_copy
LIKE Espece;
DESCRIBE Espece;
DESCRIBE Espece_copy;
Les deux commandes DESCRIBE renvoient exactement la même chose :
Field
Type
Null Key Default
Extra
id
smallint(6) unsigned
NO PRI NULL auto_increment
nom_courant varchar(40)
NO
NULL
Partie 6 : Au-delà des tables classiques : vues, tables temporaires et vues matérialisées
357/414
www.openclassrooms.com
Précédent

- 357/413

Suivant