Geti2101 : Systmes dInformation et Informatique - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Geti2101 : Systmes dInformation et Informatique

Description:

Emprunte.Code-Personne Personne.Code-Personne. Emprunte.Code-Livre ... qui sont emprunt s par St phane Faulkner ? Qui a emprunt le livre ' ... – PowerPoint PPT presentation

Number of Views:87
Avg rating:3.0/5.0
Slides: 21
Provided by: dothan
Category:

less

Transcript and Presenter's Notes

Title: Geti2101 : Systmes dInformation et Informatique


1
Geti2101 Systèmes dInformation et Informatique
  • Règles de traduction dun diagramme declasses
    vers un diagramme relationnel
  • Requêtes SQL

2
  • 1. Règle1 présence de la cardinalité (?..1)
    dun côté de lassociation
  • Chaque classe se transforme en une table
  • Chaque attribut de classe se transforme en un
    champs de table
  • Lidentifiant de la classe qui est associée à la
    cardinalité (?..1) (ex Livre) devient le clé
    étrangère de lautre classe (ex Exemplaire)
  • Contrainte dintégrité référentielle
  • CléEtrangère ? CléPrimaire
  • Ex Exemplaire.Code-Livre ? Livre.Code-Livre

3
Règle1 - Exemple
  • Quel est lauteur de lexemplaire dont le
    NExemplaire est 30 ?
  • Quels sont les exemplaires (NExemplaire) du
    livre dont le CodeLivre est 1 ?
  • Quel est lauteur de lexemplaire dont le
    NExemplaire est 50 ?
  • ? pas de sens !!!

Contrainte dintégrité référentielle 
Exemplaire.Code-Livre ? Livre.Code-Livre
4
  • 2. Règle2 présence de (?..N) des deux côtés de
    lassociation
  • Chaque classe se transforme en une table
  • Chaque attribut de classe se transforme en un
    champs de table
  • Lassociation se transforme en une table. Cette
    table a comme champs lidentifiant de chacune des
    deux classes, plus déventuels autres attributs.
  • Emprunte.Code-Personne ? Personne.Code-Personne
  • Emprunte.Code-Livre ? Livre.Code-Livre

5
2. Règle2 présence de (?..N) des deux côtés de
lassociation (idem sans la classe association)
T_Eleve.IdEleve ?
T_0.IdEleve T_AnneeEtude.IdAnneeEtude ?
T_0.IdAnneeEtude
6
Règle2 - Exemple
Contraintes dintégrité référentielle 
Emprunte.Code-Personne ? Personne.Code-Personne E
mprunte.Code-Livre ? Livre.Code-Livre
  • Qui a emprunté le  Happy baby book  ?
  • Quels sont les livres (titres) qui sont empruntés
    par Stéphane Faulkner ?
  • Qui a emprunté le livre  LaTEX  ? ? pas de sens
  • Quels sont les livres (titres) qui sont empruntés
    par Pierre Dupont ? ? pas de sens

7
  • Règle3 présence dune généralisation
  • Méthode 1
  • Créer une table avec tous les attributs des
    classes
  • Ajouter un attribut pour distinguer les types des
    objets

Professeur, Etudiant
8
  • Règle3 présence dune généralisation
  • Méthode 2
  • Créer une table pour chaque sous type, chaque
    table se compose des attributs génériques et
    dattributs spécifiques

9
  • Règle3 présence dune généralisation
  • Méthode 3
  • Créer une table par classe et des associations

10
Exercice
  • Construire le modèle relationnel correspondant au
    diagramme de classe suivant

11
Exercice Solution
12
Requêtes SQL
13
Anatomie dune requête SQL
  • SELECT ou liste de colonnes
  • FROM nom de table
  • WHERE prédicats
  • Exemple
  • SELECT Nom_Client, Prénom_Client
  • FROM Client
  • WHERE Titre M.

14
Client
SELECT Nom_Client, Prénom_Client FROM
Client WHERE Titre M.
Output
15
Client
Commande
SELECT Nom_Client, Prénom_Client FROM Client,
Commande WHERE (Id_Produit 32000) AND
(Client.Id_Client Commande.Id_Client)
Output
16
Exercice la base de données ClientProduit
17
  • Quel est le prix et numéro produit dune TV
  • Quels sont les clients (nom) qui habitent à
    Bruxelles et Namur
  • Quels sont les clients (nom et adresse) qui ont
    achetés de produits le 10/10/03
  • Quels sont les clients qui nont pas fait dachat
    en octobre.
  • Qui (nom et adresse) a acheté un ordi
  • Quels sont les produits (nomProduit) achetés par
    Kevin

5
11/11/03
5
6
13/11/03
2
Constitution
QtProduit
N_Commande
N_Produit
25
5
100
1
1
200
2
3
300
300
Hi Fi
400
400
CD
20
Contraintes dintégrité référentielle 
Commande.N_Client ? Client.N_Client Constitution.
N_Commande ? Commande.N_Commande Constitution.N_Pr
oduit ? Produit.N_Produit
18
Solution
  • Quel est le prix et numéro produit TV
  • SELECT Produit.Prix, Produit.N_Produit
  • FROM Produit
  • WHERE Produit.NomProduit   "TV"
  • Quels sont les clients (nom) qui habitent à
    Bruxelles
  • et Namur
  • SELECT Client.NomClient
  • FROM Client
  • WHERE Client.Adresse "Bruxelles" OR
  • Client.Adresse "Namur"
  • Ou
  • SELECT Client.NomClient
  • FROM Client
  • WHERE Client.Adresse IN ("Bruxelles", "Namur")

19
Solution
Quels sont les clients (nom et adresse) qui ont
achetés des produits le 10/10/03 SELECT
Client.NomClient, Client.Adresse FROM Client,
Commande WHERE (Client.N_Client
Commande.N_Client) And (Commande.DateCommande
"10/10/03") Quels sont les clients (nom et
adresse) qui nont pas fait dachat en
octobre SELECT Client.NomClient,
Client.Adresse FROM Client, Commande WHERE
(Client.N_Client Commande.N_Client) And
(Commande.DateCommande NOT LIKE "__/10/__")
20
Solution
  • Qui (nom et adresse) a acheté un ordi
  • SELECT Client.NomClient, Client.Adresse
  • FROM Client, Commande, Constitution, Produit
  • WHERE (Client.N_Client Commande.N_Client) And
  • (Commande.N_Commande Constitution.N_Commande)
    And
  • (Constitution.N_Produit Produit.N_Produit)
    And
  • (Produit.NomProduit "ordi")
  • Quels sont les produits (nomProduit) achetés par
    Kevin
  • SELECT Produit.NomProduit
  • FROM Client, Commande, Constitution, Produit
  • WHERE (Client.N_Client Commande.N_Client) And
  • (Commande.N_Commande Constitution.N_Commande)
    And
  • (Constitution.N_Produit Produit.N_Produit)
    And
  • (Client.NomClient "Kevin")
Write a Comment
User Comments (0)
About PowerShow.com