TD2 - MySQL Manipulation d`une base de données MySQL.

Transcription

TD2 - MySQL Manipulation d`une base de données MySQL.
2014 - 2015
IUT
MMI
St Raphaël
TD2 - MySQL
TD
Durée :
1H30
Manipulation d’une base de données MySQL.
Q.1 : Sous PhpMyAdmin, créer une base de données : ‘mescds’.
Q.2 : Créer une table :’eid_cds’ à partir de l’onglet SQL sous PhpMyAdmin.
SQL : En SQL le code est le suivant :
CREATE TABLE `eid_cds` (
`cd_id` int(3) NOT NULL auto_increment,
`cd_album` varchar(50) NOT NULL,
`cd_artiste` varchar(50) NOT NULL,
`cd_annee` year(4) NOT NULL,
PRIMARY KEY (`cd_id`)
);
Une fois que votre table est crée, il faut la remplir. Vous allez utiliser du SQL.
Q.3. Ecrire et tester la requête SQL pour remplir la premier enregistrement :
..............................................................................................................................................................................
Votre première donnée est enregistrée.
Continuez de la sorte pour remplir votre table. Vous pouvez encoder plusieurs lignes en une seule
instruction, tant que vous séparez chaque insertion d'un point-virgule :
SQL: INSERT INTO eid_cds VALUES (2,'Led Zeppelin IV','Led Zeppelin','1971');
INSERT INTO eid_cds VALUES (3,'The Joshua Tree','U2','1987');
INSERT INTO eid_cds VALUES (4, 'Diesel and Dust','Midnight Oil','1987');
INSERT INTO eid_cds VALUES (5, 'Don Giovanni','Mozart','1787');
etc ...
ou regrouper l'ensemble des valeurs dans une seule requête, en séparant chaque groupe de
valeurs par une virgule :
SQL :
INSERT INTO `eid_cds` (`cd_id`, `cd_album`, `cd_artiste`, `cd_annee`)
(2, 'Led Zeppelin IV', 'Led Zeppelin', 1971),
(3, 'The Joshua Tree', 'U2', 1987),
(4, 'Diesel and Dust', 'Midnight Oil', 1987),
(5, 'Don Giovanni', 'Mozart', 1787),
(6, 'Charango', 'Yannick Noah', 2006),
(7, 'Charango', 'Morcheeba', 2002),
(8, '5ème symphonie', 'Ludwig Van Beethoven', 1807),
(9, 'Chapitre 7', 'MC Solaar', 2007),
(10, 'Dub Inc Live', 'Dub Incorporation', 2006),
(11, 'ZooTV Live', 'U2', 2006);
VALUES
Problème : l'année des CD n°5 et 8 n'a pas été enregistrée correctement !
Au lieu de 1787 ou 1807, la base de données retourne '0000' lorsqu'on clique sur
"Affichage".
Ceci est du à une mauvaise définition de champs. Le type de champ YEAR ne tolère pas de
valeurs antérieures à 1901.
Q.4. Vous devez donc modifier le type de ce champ, et le définir comme une valeur
numérique limitée à 4 chiffres : INT(4). Ecrire et tester la requête SQL pour modifier le type
de ce champ.
.....................................................................................................................................................
Q.5. Maintenant faites de même pour modifier les valeurs de cd_annee des cd 5 et 8:
.....................................................................................................................................................
.....................................................................................................................................................
La table des cds une fois remplie.
Vous devez créer celle de vos amis susceptibles de les emprunter : (les noms ici sont tout ce
qu'il y a de plus imaginaires).
Q.6. Ecrire et tester la requête SQL pour créer la table.
….................................................................................................................................................
….................................................................................................................................................
Q.7. Ecrire et tester la requête SQL pour remplir la table.
….................................................................................................................................................
….................................................................................................................................................
….................................................................................................................................................
….................................................................................................................................................
PHPMyAdmin : Sélectionner la table qu'on souhaite afficher.
Choisir l'option "Afficher".
Ou, en SQL :
SQL : Pour visualiser le nom des tables :
SHOW TABLES;
SQL : Pour voir le contenu de la table eid_cds:
SELECT * FROM eid_cds;
SQL : Pour voir le contenu de la table eid_amis:
SELECT * FROM eid_amis;
Apprentissage du langage SQL par la manipulation de ces tables
Q8. Modifiez par exemple le nom du premier ami qui est en fait 'Dupond';
….................................................................................................................................................
Q.9. Supprimez le cd n°5 dans la liste car il a été égaré ;
….................................................................................................................................................
Q.10. Affichez la liste des noms et prénoms des amis ;
.....................................................................................................................................................
Q.11. Affichez tous les cds sortis en 1987 ;
.....................................................................................................................................................
Q.12. Affichez la liste des albums et des artistes des cds triés par ordre alphabétique selon le
nom de l'album ;
.....................................................................................................................................................
Q.13. Affichez la liste des cds dont le nom de l'album commence par "Ch" ;
.....................................................................................................................................................
Q.14. Affichez la liste des cds dont le nom de l'album contient 'ang' dans le titre ;
.....................................................................................................................................................
Q.15. Affichez la liste des noms et prénoms des amis dont le prénom termine par "que" ;
….................................................................................................................................................