===== Définitions =====
Modéliser une base de données, c'est :
* Identifier les différents ensembles en interaction
* Identifier les liens de dépendance entre les différents ensembles
{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-01.png?500}}
{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-02.png?500}}
{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-03.png?500}}
Les liens entre les différents ensembles sont appelés des **associations**
==== Association ====
Une association exprime des relations de dépendance entre deux ou plusieurs ensembles d’entités.
**Définition** : Une **association** entre les ensembles $E_1$, ..., $E_k$ est un sous-ensemble du produit $E_1 \times ... \times E_k$.
Il s'agit donc d'un ensemble de k-uplets $\{..., (t_1,…,t_k), …\}$ t.q. $t_1 \in E_1,…, t_k \in E_k$.
où $k$ est le degré de l'association :
* k=2 : association binaire
* k=3 : association ternaire
* etc…
===Rôles des associations===
* //**Attribution**// : propriété, réservation, participation, supervision, auteur, rôle, pilote, ...
* //**Événements**// : achat, vente, séance, épreuve, appel, consultation, réunion, transaction, transport ...
* //**Aggrégation/Composition**// : tout/parties, contenant/contenu, supérieur/subordonné, pays/région, ...
* //**Relations entre membres**// : parenté, collaboration, cercle d'amis, ...
* ...
==== Contraintes de cardinalité ====
Pour chaque ensemble participant à une association, on précise dans combien d'instances de l'association chaque entité peut apparaître.
On donne en général un intervalle $[b_\text{inf},b_\text{sup}]$ qui définit le nombre d'apparitions autorisées pour chaque rôle de l'association
===Représentation graphique===
**Associations binaires**
|{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-04.png?400}}|
|{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-05.png?400}}|
|{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-06.png?400}}|
**Associations ternaires**
| {{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-07.png?300}}|{{public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:s7-cm2-08.png?250}}|
__Up__ : [[public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste]]
__Next__ :[[public:std-3:cm2:conception_de_bases_de_donnees:3.1.1_modele_ensembliste:types_d_associations]]