1. Trang chủ
  2. » Công Nghệ Thông Tin

Pratique de MySQL et PHP- P43 pps

5 152 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Pratique de MySQL et PHP
Trường học Unknown
Chuyên ngành MySQL and PHP
Thể loại Thèse
Năm xuất bản Unknown
Thành phố Unknown
Định dạng
Số trang 5
Dung lượng 181,12 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nom de l’entité Clé Film mot de passe année de naissance nom email Internaute année genre résumé titre prénom Figure 4.2 — Représentation des entités Choix de l’identifiant Dans le premi

Trang 1

Un type d’entité, comprenant les éléments ci-dessus, décrit toutes les entités d’un même ensemble On représente ce type graphiquement comme sur la figure 4.2 qui

donne l’exemple de deux entités, Internaute et Film.

Nom de l’entité

Clé

Film

mot de passe année de naissance

nom

email

Internaute

année genre résumé

titre

prénom

Figure 4.2 — Représentation des entités

Choix de l’identifiant

Dans le premier cas, on a décidé qu’un internaute était identifié par son email, ce qui est cohérent pour une application web Il est en fait très rare de trouver un attribut d’une entité pouvant jouer le rơle d’identifiant Le choix du titre pour identifier un film serait par exemple beaucoup plus discutable En ce qui concerne les artistes, acteurs ou réalisateurs, l’identification par le nom seul paraỵt vraiment impossible

On pourrait penser à utiliser la paire (nom,pr´enom), mais l’utilisation d’identifiants composés de plusieurs attributs, quoique possible, peut poser des problèmes de per-formance et complique les manipulations par SQL

Dans la situation, fréquente, ó on a du mal à déterminer quelle est la clé d’une entité, on crée un identifiant « abstrait » indépendant de tout autre attribut Pour les

artistes, nous avons ajouté id, un numéro séquentiel qui sera incrémenté au fur et

à mesure des insertions Ce choix est souvent le meilleur, dès lors qu’un attribut ne s’impose pas de manière évidente comme clé

Associations

La représentation (et le stockage) d’entités indépendantes les unes des autres est de

peu d’utilité On va maintenant décrire les associations entre des ensembles d’entités.

Une bonne manière de comprendre comment on doit représenter une association entre des ensembles d’entités est de faire un graphe illustrant quelques exemples, les plus généraux possibles

Prenons le cas de l’association représentant le fait qu’un réalisateur met en scène des films Sur le graphe de la figure 4.3 on remarque que :

1 certains réalisateurs mettent en scène plusieurs films ;

2 inversement, un film est mis en scène par au plus un réalisateur

La recherche des situations les plus générales possibles vise à s’assurer que les deux caractéristiques ci-dessus sont vraies dans tout les cas Bien entendu on peut trouver

Trang 2

1% des cas ó un film a plusieurs réalisateurs, mais la question se pose alors : doit-on modifier la structure de notre base, pour 1% des cas Ici, on a décidé que non

Psychose

Vertigo Impitoyable Alfred Hitchcock

Clint Eastwood

Figure 4.3 — Association entre deux ensembles.

Ces caractéristiques sont essentielles dans la description d’une association On les représente sur le schéma de la manière suivante :

1 si une entité A peut être liée à plusieurs entités B, on indique cette multiplicité

par un point noir (•) à l’extrémité du lien allant de A vers B ;

2 si une entité A peut être liée à au plus une entité B, alors on indique cette unicité par un trait simple à l’extrémité du lien allant de A vers B ;

Pour l’association entre Réalisateur et Film, cela donne le schéma de la figure 4.4 Cette association se lit Un réalisateur réalise un film, mais on pourrait tout aussi bien utiliser la forme passive avec comme intitulé de l’association Est réalisé par et une lecture Un film est réalisé par un réalisateur Le seul critère à privilégier dans ce choix

des termes est la clarté de la représentation

Film

Réalise

Réalisateur

titre

année genre résumé année naiss

id

prénom nom

Figure 4.4 — Représentation de l’association.

Prenons maintenant l’exemple de l’association (Acteur,Film) représentant le fait qu’un acteur joue dans un film Un graphe basé sur quelques exemples est donné dans la figure 4.5 On constate tout d’abord qu’un acteur peut jouer dans plusieurs films, et que dans un film on trouve plusieurs acteurs Mieux : Clint Eastwood, qui apparaissait déjà en tant que metteur en scène, est maintenant également acteur, et dans le même film

Trang 3

Clint Eastwood

Les films

Inspecteur Harry Impitoyable

Ennemi d’état Gene Hackman

Figure 4.5 — Association (Acteur,Film)

Cette dernière constatation mène à la conclusion qu’il vaut mieux regrouper les acteurs et les réalisateurs dans un même ensemble, désigné par le terme plus général « Artiste » On obtient le schéma de la figure 4.6, avec les deux associations représentant les deux types de lien possible entre un artiste et un film : il peut jouer dans le film, ou le réaliser Ce « ou » n’est pas exclusif : Eastwood joue dans

Impitoyable, qu’il a aussi réalisé.

Film

Réalise

Joue

Artiste

rôle

titre

année genre résumé année naiss.

id

prénom nom

Figure 4.6 — Associations entreArtisteetFilm.

Dans le cas d’associations avec des cardinalités multiples de chaque côté, certains attributs doivent être affectés qu’à l’association elle-même Par exemple, l’association

Joue a pour attribut le rôle tenu par l’acteur dans le film (figure 4.6) Clairement, on

ne peut associer cet attribut ni à Acteur puisqu’il a autant de valeurs possibles qu’il y a

de films dans lesquels cet acteur a joué, ni à Film, la réciproque étant vraie également.

Seules les associations ayant des cardinalités multiples de chaque côté peuvent porter des attributs

Associations impliquant plus de deux entités

On peut envisager des associations entre plus de deux entités, mais elles sont plus difficiles à comprendre, et la signification des cardinalités devient beaucoup plus ambiguë

Imaginons que l’on souhaite représenter dans la base de données les informations indiquant que tel film passe dans telle salle de cinéma à tel horaire On peut être

tenté de représenter cette information en ajoutant des entités Salle et Horaire, et en

créant une association ternaire comme celle de la figure 4.7

Trang 4

Avec un peu de réflexion, on décide que plusieurs films peuvent passer au même horaire (mais pas dans la même salle !), qu’un film est vu à plusieurs horaires diffé-rents, et que plusieurs films passent dans la même salle (mais pas au même horaire !) D’ó les cardinalités multiples pour chaque lien On peut affecter des attributs à cette association, comme par exemple le tarif, qui dépend à la fois de l’horaire, du film et

de la salle

Horaire

id

heure début

id

nom adresse Salle

titre

année genre résumé heure fin

Figure 4.7 — Association ternaire.

Ces associations avec plusieurs entités sont assez difficiles à interpréter, et elle offrent beaucoup de liberté sur la représentation des données, ce qui n’est pas toujours souhaitable On ne sait pas par exemple interdire que deux films passent dans la même salle au même horaire Le graphe de la figure 4.8 montre que cette configuration est tout à fait autorisée

Les salles

14-16 16-18

Impitoyable Vertigo

Salle 1 Salle 2

Figure 4.8 — Graphe d’une association ternaire.

Les associations autres que binaires sont donc à éviter dans la mesure du

possible Il est toujours possible de remplacer une telle association par une

entité Sur l’exemple précédent, on peut tout simplement remplacer l’association

Trang 5

ternaire par une entité Séance, qui est liée, par des associations binaires, aux trois

entités existantes (voir figure 4.9) Il est préférable d’avoir plus d’entités et moins d’associations complexes, car cela rend l’interprétation du schéma plus facile Dans le cas de la séance, au lieu de considérer simultanément trois entités et une association, on peut prendre maintenant séparément trois paires d’entités, chaque paire étant liée par une association binaire

Horaire

id

heure début

id

Séance

tarif

Film

titre

année genre résumé

id

nom adresse Salle heure fin

Figure 4.9 — Transformation d’une association ternaire en entité.

Récapitulatif

En résumé, la méthode basée sur les graphiques Entité/Association est simple et pratique Elle n’est malheureusement pas infaillible, et repose sur une certaine expé-rience Le principal inconvénient est qu’il n’y a pas de règle absolue pour déterminer

ce qui est entité, attribut ou association, comme le montre l’exemple précédent ó une association s’est transformée en entité

À chaque moment de la conception d’une base, il faut se poser des questions auxquelles on répond en se basant sur quelques principes de bon sens :

1 rester le plus simple possible ;

2 éviter les associations compliquées ;

3 ne pas représenter plusieurs fois la même chose ;

4 ne pas mélanger dans une même entité des concepts différents

Voici quelques exemples de questions légitimes, et de réponses qui paraissent raison-nables

« Est-il préférable de représenter le metteur en scène comme un attribut de Film ou comme

une association avec Artiste ? »

Ngày đăng: 06/07/2014, 00:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN