Synthèse El P1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 4

Bases de données

Avec le développement de l’informatique, les quantités de données à traiter n’ont cessé d’augmenter. Il
a donc fallu trouver des solutions pour assurer la persistance de ces données ainsi que la mise en place de
systèmes permettant de les exploiter de façon simple efficace et indépendante du matériel utilisé.
Avec le développement des réseaux, ces solutions ont dû rendre possible les accès concurrents par
plusieurs ordinateurs tout en garantissant l'intégrité des données en cas de modification, autrement dit leur
cohérence, leur fiabilité et leur pertinence. Ces évolutions ont donné naissance aux « Systèmes de Gestion de
Bases de Données Relationnelles » (SGBDR).

I) Les bases de données


L’année dernière nous avons vu que lorsque les données deviennent volumineuses, nous étions obligés
d’utiliser des fichiers externes par exemple le fichier .csv concernant les accidents de la route de plusieurs
mégaoctets
Voici par exemple les premières lignes de la table des accidents de la route en France en 2018 (Au moins
130 000 lignes) La première ligne contient les descripteurs de la table

Ainsi par exemple an_nais désigne l’année naissance de la personne accidentée.


On avait alors, par programmation, extrait des informations d’une copie de ce fichier, chacun de son côté
Problèmes :
1. Les données sont statiques au sens où elles ne sont pas mises à jour régulièrement
2. Plusieurs personnes ne peuvent pas consulter les mêmes données en même temps

Or à l’heure actuelle il est courant que des données volumineuses et actualisées soient consultées en ligne
par plusieurs personnes, par exemple des réservations de billets de train ou de locations de vacances ou
encore des cartes (OpenstreetMap). On peut observer d’ailleurs cette "concurrence" dans la consultation des
données grâce à des messages affichées sur la page Web comme "il ne reste que 5 billets pour cette
destination" ou encore "plusieurs personnes consultent cette destination"

Schématiquement le principe est


le suivant : plusieurs clients
peuvent exprimer des requêtes en
ligne à un serveur qui est en
relation avec une base de
données gérée par un logiciel
appelé système de gestion de
bases de données (SGBD)
Définitions :
 Une base de données est ………………………………………………………
…………………………………………………………………………
 Un système de gestion de base de données (SGBD) est …………………………………
…………………………………………………………………………

II) Les bases de données relationnelles :


A) Généralités :
En 1970, Edgar Codd surnommé Ted Codd, qui travaillait au laboratoire
IBM, propose un modèle logique pour gérer le partage de gros volumes de
données. À la base de son modèle se trouvent des notions mathématiques comme
le langage ensembliste, les relations, et la logique. Le premier système voit le
jour deux ans plus tard avec la société Oracle (Edgar Franck Codd a reçu le prix
Turing en 1981).

Le principe est de modéliser des relations entre plusieurs informations et


de les ordonner entre elles. Les principaux concepts qui interviennent sont la
relation, le domaine, l’identifiant ou clé primaire, l’identifiant externe ou clé
étrangère.
De manière intuitive une base de données relationnelles est donc un ensemble de tableaux à deux dimensions
appelés tables ou relations qui présentent des associations entre eux.

Définition :
 Une base de données relationnelle est………………………………………………
……………………………………………………………………………
 Un système de gestion de base de données relationnelle (SGBDR) est ………………………..
……………………………………………………………………………
On utilise la base de données relationnelle, qui va nous servir d’exemple : Mondial Data Base
Voici un extrait de la relation ou table :
country(NAME,CODE,CAPITAL,PROVINCE,AREA,POPULATION)
qui décrit un pays par son nom, sa capitale, la province de sa capitale, sa superficie et le nombre d’habitants

Voici un extrait de la relation :


economy(COUNTRY,GDP,AGRICULTURE,SERVICE,INDUSTRY,INFLATION,UNEMPLOYMENT)
qui décrit l’économie du pays référencé par son code par un certain nombre de caractéristiques
Vocabulaire :
 Un n-uplet ou un tuple (une ligne d’un tableau) est une fonction avec des paramètres qu’on appelle ici
…………… ou …………
 Une relation est définie comme l’ensemble des n-uplets (lignes)
 Chaque attribut a un type ainsi qu’un domaine, ainsi l’attribut NAME est de type string, l’attribut
POPULATION est de type int et l’attribut UNEMPLOYMENT de type float.
 Le domaine de l’attribut POPULATION est l’intervalle [0 ; 2 000 000 000] et le domaine de l’attribut
UNEMPLOYMENT est l’intervalle [0 ; 100] (pourcentage).
 Un attribut (ou plusieurs) attributs qui identifie(ent) de manière unique un n-uplet est appelé………
……………par exemple CODE, ainsi que NAME, CODE est une clé primaire pour la relation :
country(NAME,CODE,CAPITAL,PROVINCE,AREA,POPULATION)
 Le schéma relationnel d’une base de données est l’ensemble des relations d’une base de données.
Lorsqu’on présente un schéma relationnel, on fournira :
- ………………………………
- pour chaque relation, la liste des …………… avec leur domaine respectif
- pour chaque relation, …………………………………………………….
On mettra en évidence les clefs primaires en les soulignant, et les clefs étrangères en les précédant du
caractère #.

Remarque :
Lors de la création d’une relation, il sera nécessaire de renseigner le domaine de chaque attribut. C’est le
SGBD qui s’assurera qu’un élément rajouté ç une relation respecte bien le domaine de l’attribut
correspondant.

Exemple :
 Voici le schéma relationnel d’une base de données Films :
Schéma de la base
Film(idFilm:INT, titre:TEXT, année:INT, genre:TEXT, #idréalisateur:INT )
Pays(code:TEXT, nom :TEXT , langue :TEXT)
Artiste(idArtiste:INT, nom:TEXT, prénom:TEXT, annéeNaiss:INT)
Rôle(idFilm:INT, nomRôle:TEXT)
Internaute(email:TEXT, nom:TEXT, prénom:TEXT, CodePostal:INT)
Notation(email:TEXT, IdFilm:INT, note:INT)
Les clés primaires des relations sont en gras et soulignés
 Si on veut relier un film à un réalisateur, qui est aussi un artiste on va passer par l’attribut
idRéalisateur de la relation Film
Ainsi un film qui aura un attribut idRéalisateur égal à la clé primaire idArtiste d’un artiste, est un
film réalisé par cet artiste.
On dit alors que idRéalisateur est une …………………… de la relation idFilm
Exemple :
On considère les élèves d’un lycée, afin d’organiser les données un dresse le tableau suivant, qui définit une
relation qu’on nomme Elèves
Nom Prénom Âge Sexe Classe Ville
Ratif Luc 1
Diot Kelly 2
Rest Eve 1

Une colonne s’appelle ………………………………………………………
Une ligne s’appelle …………………………………………………………

Peut-on identifier une élève de manière unique seulement avec son nom ? ……………………
Que peut-on faire ? …………………………………………………………
………………………………………………………………………
………………………………………………………………………
Nom Prénom Âge Sexe Classe Ville
Ratif Luc 1
Diot Kelly 2
Rest Eve 1
… …

On considère en plus une deuxième relation nommé Classes :


Classe Professeur Salle
TNSI 1 L14
TG2 2 L18
1G4 1
… …
On a deux tableaux pour représenter une situation qui devrait pouvoir être mis avec un tableur dans un
tableau unique.
L’attribut Classe de la relation Classes est …………………
L’attribut Classe de la relation Elèves est …………………

Pour éviter tout problème en cas d’éventuelles modifications, il est plus pratique d’utiliser un nombre entier
plutôt qu’une chaîne de caractères. On ajoute donc une colonne supplémentaire. Il s’agit d’une clé artificielle
ou clé de substitution qui permet d’identifier n’importe quelle ligne.
Classe Professeur Salle

… TNSI 1 L14

… TG2 2 L18

… 1G4 1
… …
Les valeurs de la clé étrangère Classe de la relation Elèves sont alors des valeurs de la clé primaire Id de
la relation Classes.

Remarque :
Avec ce système de représentation, les modifications sont plus simples à gérer.
Que faudrait-il faire si tous les élèves de la 1ère G4 changent de salle ? …………………………

Vous aimerez peut-être aussi