corrigé MySQL – ordres autres que SELECT

Voici le contenu du script :

/* Créer une copie de la table ‘animal’ en ‘animaux’, vide */

create table animaux as select * from animal
where 1=2;

/* Ajouter une colonne ‘no_animal’ clé primaire */

alter table animaux add no_animal integer not null auto_increment primary key;

/* Inserez les lignes de ‘animal’ sans les oiseaux (‘bird’) */
insert into animaux
( nom, maitre, espece, sexe, naissance, mort )
select * from animal
where espece <> « bird »

/* Traduire les especes ‘cat’, ‘dog’ et ‘snake’
en modifiant les lignes de la table */

update animaux set espece = »chat »
where espece = « cat »;
update animaux set espece = »chien »
where espece = « dog »;
update animaux set espece = »serpent »
where espece = « snake »;

/* Supprimer ‘slim’ de la table et la renommer en mammiferes */

delete from animaux where nom = « slim »;
rename table animaux to mammifere;

/* afficher les animaux vivants */

select nom from mammifere where mort is null;

Pour l’exécuter …

mysql -u root -p

mysql> use menagerie

mysql> source chemin_du_script\nom_du_script

ou plus directement

mysql -u root -p menagerie <c:\temp\mon_script.sql