TD9

Commentaires

Transcription

TD9
Université de Nice-Sophia Antipolis
POLYTECH ELEC5-TR
mercredi 12 octobre 2016
Durée: 3h
Java
Travaux Pratiques – Séance no 10
Mysql–JDBC
6) Listez les tables de la bd elec5tr :
mysql> USE elec5tr
mysql> SHOW TABLES;
7) Normalement, vous devez voir une seule table dans la base de données elec5tr. Comment est-elle structurée ? Pour voir ses différents champs, tapez la commande :
mysql> DESCRIBE animal;
1
Mysql
8) Ajoutez des animaux dans la table :
1) À l’aide de phpMyAdmin ou directement avec le client mysql, connectez-vous au
SGBD mysql et créez un utilisateur appelé elec5tr avec un mot de passe que vous
choisirez.
mysql> GRANT ALL PRIVILEGES ON *.* TO ’elec5tr’@’localhost’
-> IDENTIFIED BY ’monpasswd’ WITH GRANT OPTION;
Puis, reconnectez-vous sous l’identité elec5tr.
mysql -h localhost -u elec5tr -p
Enter password:...
mysql> INSERT INTO animal
-> VALUES (’Janot’,’La Fontaine’,’lapin’,’m’,’1665-03-30’,NULL);
mysql> INSERT INTO animal
-> VALUES (’Caramel’,’Maud’,’chat’,’f’,’2003-06-30’,NULL);
mysql> INSERT INTO animal VALUES
-> (’argos’,’Ulysse’,’chien’,’m’,NULL,NULL);
9) Complétez avec 5 ou 6 animaux supplémentaires.
10) Pour visualiser toute la table, vous utiliserez la requête SELECT :
2) Une fois connecté, vous pouvez visualiser les BD déjà présentes :
mysql> SELECT * FROM animal;
mysql> SHOW DATABASES;
3) Sélectionnez- la base mysql et visualisez les tables qu’elle contient :
11) Pour sélectionner des lignes particulières de la table, on ajouter des critères à la
requête SELECT. Pour visualiser, les mâles :
mysql> SELECT * FROM animal WHERE sexe = ’m’;
mysql> USE mysql
mysql> SHOW TABLES;
12) Pour récupérer des informations à partir d’une table, on utilise la commande
SELECT :
4) Créez la base de données elec5tr
SELECT quoi selectionner
FROM quel table
WHERE conditions a satisfaire
mysql> CREATE DATABASE elec5tr;
5) Dans la bd elec5tr, vous allez créer une table pour mémoriser des animaux identifiés
par leur nom, le nom de leur maı̂tre, l’espèce animal, le sexe (m ou f), les dates de
naissance et de décès.
mysql> CREATE TABLE animal (nom VARCHAR(20), maitre VARCHAR(20),
-> espece VARCHAR(20), sexe CHAR(1), naissance DATE, mort DATE);
1
Pour lister tout le contenu de la table animal :
mysql> SELECT * FROM animal;
13) Testez et Expliquer ce que font les requêtes suivantes :
2
mysql> SELECT nom, naissance FROM animal;
mysql> SELECT nom, espece, naissance FROM animal
-> WHERE espece = ’chien’ OR espece = ’chat’;
14) Si vous devez modifier la valeur d’un champ particulier, vous utiliserez la requête
UPDATE. En fait Caramel est un chat, et non une chatte :
mysql> UPDATE animal SET sexe = ’m’ WHERE nom = ’Caramel’;
15) Pour supprimer un animal particulier de la table :
mysql> CREATE PROCEDURE compterAnimaux(IN esp VARCHAR(20), OUT n INT)
-> SELECT COUNT(*) INTO n FROM animal WHERE espece = esp;
20) Vous pouvez tester la procédure compterAnimaux en vous connectant au serveur
mysql sur djinn avec votre client mysql et en exécutant les requètes suivantes :
mysql> set @n=0;
mysql> call compterAnimaux(’chien’,@n);
mysql> SELECT @n;
21) Complétez votre programme Java pour faire un appel à cette procédure stockée et
afficher sur la sortie standard son résultat.
mysql> DELETE FROM animal WHERE nom = "Caramel";
16) Enfin, pour quitter le client mysql, tapez :
mysql> QUIT
2
Jdbc
Dans cette deuxième partie, vous accéderez à la base de données précédente depuis
une application Java qui utilise Jdbc.
17) Écrivez le programme qui établit une connexion à la base de données mysql elec5tr
sur localhost (user=elec5tr,passwd=...).
18) Complétez votre programme afin envoyer une requête qui sélectionne tous les chiens
mâles de table animal et qui écrit sur la sortie standard sur leur nom et celui du
propriétaire.
19) Soient les déclarations de tableaux suivantes dont l’ordre des noms des animaux
correspond à leurs espèces :
String [] noms
= { " Coco " , " Clarence " };
String [] espèce = { " perroquet " , " lion " };
À l’aide d’un PreparedStatement, complétez votre programme pour ajouter les animaux des tableaux dans la table animal. La requête SQL d’insertion aura la forme
suivante :
INSERT INTO animal VALUES (?, NULL, ?, NULL, NULL, NULL);
Ajoutez à la base de données elec5tr une procédure stockée, appelée compterAnimaux qui calcule le nombre d’animaux d’une certaine espèce. L’espèce est un paramètre donnée et le nombre d’animaux calculé est un paramètre résultat .
Cette procédure est définie comme suit :
3
4

Documents pareils