INTRODUCTION AUX BASES DE DONNEES

Créer une table dans une base de données

1. Se logger sous PhpMyAdmin, en tapant "http://172.17.1.1/phpmyadmin" dans la fenêtre d'un navigateur. Entrer le login et le mot de passe.

2. Créer la table "Recepteur" (le nom de la base étant votre login) et les cinq champs de cette table.

3. Définir le champ "recepteur_id" comme clé primaire (Primary) auto-incrémentée.

4. Affecter le type INDEX au champ "piece_id" de la table "Recepteur".

Manipuler le langage SQL

Création d'une table

1. A partir de l'interface de saisie des requêtes SQL, lancer la requête suivante :

CREATE TABLE Piece(
  piece_id INT(11) NOT NULL AUTO_INCREMENT,
  nom VARCHAR(20) NOT NULL,
  commentaire VARCHAR(30) NOT NULL,
  PRIMARY KEY (piece_id)
) ENGINE=MYISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1

2. Commenter la requête et le résultat obtenu.

Enregistrement des données

1. A partir de la table "Piece", cliquer sur l'onglet "Insérer" et remplir la table avec les deux premiers enregistrements fournis ci-dessous.

2. Commenter le résultat et la requête SQL qui a permis de l'obtenir.

3. Rédiger et exécuter la requête SQL permettant d'insérer les deux enregistrements suivants.

4. Rédiger et exécuter la requête SQL permettant d'insérer les enregistrements dans la table "Recepteur".

Visualisation des données

1. A partir de la table "Recepteur", cliquer sur "Afficher". Commenter le résultat et la requête SQL qui a permis de l'obtenir.

2. Exécuter et commenter la requête SQL suivante :

SELECT nom FROM Recepteur

3. Exécuter et commenter la requête SQL suivante :

SELECT * FROM Recepteur ORDER BY adresse ASC

4. Rédiger et exécuter la requête SQL permettant de lister l'ensemble des enregistrements du champ "commentaire" de la table "Piece".

5. Rédiger et exécuter la requête SQL permettant de lister les enregistrements du champ "commentaire" de la table "Piece", et ce par ordre décroissant (DESC) des enregistrements du champ "piece_id".

6. Exécuter et commenter la requête SQL suivante :

SELECT * FROM Recepteur WHERE Piece_id<2.

7. Exécuter et commenter la requête SQL suivante :

SELECT * FROM Recepteur WHERE nom LIKE 'v%'.

8. Comparer et commenter les résultats des requêtes suivantes :

SELECT piece_id FROM Recepteur
SELECT DISTINCT piece_id FROM Recepteur

Modification des données

1. A partir de l'interface appropriée, exécuter la requête SQL suivante :

UPDATE Piece SET commentaire='Chambre Ouest étage' WHERE piece_id=1

2. Rédiger et exécuter la requête SQL permettant de modifier la valeur du champ "adresse" pour l'enregistrement dont le champ "recepteur_id" vaut 4.

Suppression des enregistrements

Rédiger et exécuter la requête SQL permettant d'effacer l'enregistrement de la table "Piece" dont le champ "piece_id" vaut 4.

Jointure naturelle

On souhaite lister l'ensemble des adresses de récepteurs et les pièces (sous forme de commentaire) auxquelles ils sont attachés.

1. A partir de l'interface appropriée, exécuter le requête :

SELECT adresse,commentaire FROM Piece,Recepteur

Le résultat correspond-il à vos attentes? En fait, il est nécessaire d'ajouter un critère de jointure dans la requête SQL.

2. A partir de l'interface appropriée, exécuter le requête :

SELECT adresse,commentaire FROM Piece,Recepteur WHERE piece_id=piece_id

Que répond MySQL à cette requête? Pourquoi?

3. A partir de l'interface appropriée, exécuter le requête :

SELECT adresse,commentaire FROM Piece,Recepteur WHERE Recepteur.piece_id=Piece.piece_id

Commenter le résultat. Correspond-il à vos attentes?

4. Elaborer et tester la requête SQL permettant de lister le nom des récepteurs et le nom des pièces auxquels ils sont associés.

Exporter une table

Après avoir sélectionné la table "Recepteur", cliquer sur l'onglet "Exporter".

  1. Exécuter une exportation au format SQL. Commenter le résultat.
  2. Exécuter une exportation au format CSV. Commenter le résultat.