CRÉER et EXPLOITER DES BASES DE DONNEES
Gérer une base de données Répondre
à un problème : Quoi faire ? Disposer d’une collection de données organisée ou structurée selon un certain modèle (on va décrire les données du monde réel, les liens entre elles, leur sémantique) Pour
trouver des solutions grâce à la gestion de la base de données
Concevoir une base de données L'idée
est de réussir à rassembler les informations, par thème, selon « fiches organisées » De quelles fiches a-t-on besoin ? Pour quel usage? Quel fonctionnement? Quel processus? Pour quelle organisation des données ? On va essayer de modéliser la réalité, en fixant des règles Pas d’organisation idéale …
Les entités On
crée des fiches ou « entités » pour chaque objet/élément distinct à gérer Les entités = regroupements d'informations = populations d’individus homogènes Ces informations = des « attributs » sont variables Mais ne changent pas de nature
Exemples d’entités tité n E
Monument
Attributs = propriétés de l’entité
Nom monument Quartier Adresse Date construction Présence gardien …
Entreprise Nom entreprise Adresse Telephone Nom Contact …
Les relations On
associe les entités entre elles i.e. on crée des liaisons logiques entre elles qui reflètent la réalité OU Ce sont les actions qui se passent entre les « fiches », énoncées par des verbes
Relations : exemple
Client Nom Prénom Adresse Téléphone …
Article Commande
Nom article Date enregistrement Prix Couleur Taille … Date envoi
Relations : exemple
Usine Nom Ville Nbre salariés Production Nom directeur …
Pays Est implantée
Nom Pays Superficie Nbre habitants Langue Capitale …
Relations : exemple
Client Nom Prénom Adresse Téléphone …
Commande Passer
Code commande Code produit Date commande Date envoi Date livraison …
Le modèle entité- association On
crée des fiches ou « entités » qui pour chaque élément distinct à gérer On associe les entités entre elles C’est le modèle entité-association = entité-relation ou encore modèle relationnel C’est un modèle, un schéma qui représente les différents éléments (entités) et leurs interactions (associations)
Les cardinalités Elles
permettent de dénombrer les éléments de l'entité de départ en relation avec un élément de l'entité d'arrivée, et vice versa OU La cardinalité indique le nombre minimum (0 ou 1) et maximum (1 ou n) de fois où une occurrence d'une entité peut participer à une association
Cardinalités : exemple Usine Nom Ville Nbre salariés Production Nom directeur … une usine est implantée dans un (card. min=1) et un seul (card. max=1) pays
Pays 1,1
Est implantée
0,n
Nom Pays Superficie Nbre habitants Langue Capitale … réciproquement un pays peut faire l'objet soit d'aucune (card. min=0) implantation d'usine soit de plusieurs (card. max=n)
Cardinalités : exemple
Une personne habite dans un appartement et un seul à la fois, mais un appartement peut être habité par personne ou par plusieurs personnes (se trouver vide ou être pourvu de plusieurs personnes).
1,1
Une personne habite dans un appartement et un seul à la fois
0,n
un appartement peut être habité par personne ou par plusieurs personnes
Cardinalités C’est
une relation 1 / n Cardinalités maximales des deux côtés des entités
1,1 Personne
Relation 1,n
0,n
L’identifiant d’une entité C'est
un attribut, qui permet de distinguer un élément de l'entité de manière unique et sans aucune ambiguïté par rapport à l'ensemble des autres éléments
Mieux
vaut créer un identifiant numérique totalement indépendante des attributs ordinaires de l’entité (pas un nom par ex.)
Réaliser le modèle Prendre
le temps de la réflexion. Vous êtes en train de réaliser un modèle, de modéliser Imaginer ce qu’il vous faut savoir… Etes-vous sûr de vos affirmations? Qu’est-ce qui se passe dans la réalité? Vous avez créé un modèle conceptuel de données
Processus de création d’une BDD REALITE
La Base de Données Traduire
Vers la solution technique
Du MCD au modèle logique Le
MCD (« Modèle Conceptuel de Données ») peut être transformé en modèle logique puis en solution physique (base de données)
Les entités = les tables L’identifiant = la clé primaire Les relations sont créées par les clés chaque ligne d’un tableau correspondra à une occurrence de l'entité, ou "enregistrement"
Exemple des interventions sur des équipements
Les infos = attributs des fiches Toutes les informations que l’on veut ajouter aux fiches Nom_Equipement
Entreprise
Gestionnaire
Intervention
Num_equip Nom Nature Adresse Superficie Date_création
Num_entrep Nom Interlocuteur Telephone Fonction Adresse ville
Num_gest Nom Telephone Fonction Adresse ville
Num_interv Montant Date
Ex. d’association Equipement
Gestionnaire Num_gest Nom Telephone Fonction Adresse ville
gère
Num_equip Nom Adresse Superficie Date_création
Entreprise
Intervention
Num_entrep Nom Interlocuteur Telephone Fonction Adresse ville
Num_interv Nom Nature Montant Date
réalise
Association & cardinalité Comment
cette association s’exerce ? La « phrase magique » : Est-ce qu’une [entité] [verbe] 1 ou plusieurs [autre entité] ?
Ex. d’association
Entreprise
Intervention
Num_entrep Nom Interlocuteur Telephone Fonction Adresse ville
Num_interv Nom Nature Montant Date
1,n
réalise
Est-ce qu’une [entreprise] [réalise] 1 ou plusieurs [interventions] ? : une ou plusieurs (1, n)
1,1
Est-ce qu’une [intervention] [est réalisée] par un ou plusieurs [entreprises] ? : par une entreprise => (1,1)
Règles de passage de MCD à la BDD Toute
entité doit être représentée par une table Associations de type (1,1) – (1,1) : les deux tables doivent avoir la même clef (rare) Associations de type (1,1) – (1,n) : chaque table possède sa propre clef et on reproduit la clé de la table côté 1,n (ou 0,n) vers la table côté 1,1 (ou 0,1)
Association & cardinalité : ex 1 Il faut introduire l’identifiant de l’entité côté 1,n dans l’entité côté 1,1 Entreprise
Intervention
Num_entrep Nom Interlocuteur Telephone Fonction Adresse ville
Num_interv Nom Nature Montant Date Num_entrep
1,n
réalise
1,1
Association & cardinalité : ex 2 Gestionnaire
Num_gest
1,n
Telephone Fonction Adresse Ville
Est-ce qu’un [gestionnaire] [gère] 1 ou plusieurs [équipements] ? = un ou plusieurs : 1, n
gère
Equipement
1,1
Num_equip Nom Adresse Superficie Date_création
Num_gest
Est-ce qu’un [équipement] [est géré] par 1 ou plusieurs [gestionnaires] ? => par un seul gestionnaire = 1,1
Associations
de type (1,n) – (1,n) , une table intermédiaire dite table de jointure Elle doit posséder comme clef primaire une conjonction des clefs primaires des deux tables pour lesquelles elle sert de jointure.
Association & cardinalité Nom_Equipement Nom_Entreprise Num_entrep Nom Interlocuteur Telephone Fonction Adresse ville
Intervention Num_interv Type traite Montant 1,n 1,1 Date Num_equip Num_entrep
Traite
Num_equip Nom Nature concerne Adresse Superficie 1,1 1,n Date_création
Fiche intermédiaire « table d’association ou De jonction »
Un outil pour créer une BDD Access
= un logiciel – un système de Gestion de base de données
SGBDR
= Système de Gestion de Bases de Données Relationnel
Excel versus Access Excel
des tableaux de données peu de concepts à connaître pour manipuler les feuilles Excel
Access
vraie BdD relationnelle avec différentes tables dont les données peuvent être liées concepts liés aux BdD à connaître, perçus comme complexes
MCD
Le modèle relationnel
Il domine aujourd'hui dans le monde des SGBD et des SIG Les avantages L'ajout et le retrait de données est facile. La flexibilité du modèle relationnel est relativement grande. La construction et l'utilisation d'une base de données relationnelle est simple (Le modèle repose sur une base théorique bien développée).