Intro Aux Bases de Donnes

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

Introduction aux bases de données

Cours : Introduction aux bases de données


Description
Familiariser l'étudiant avec les structures de données utilisées dans les systèmes de gestion de bases de
données. Introduire les concepts fondamentaux des bases de données : les données, bases de données,
systèmes de gestion de base de données (SGBD), l'algèbre relationnelle, les notions de table, le langage
de définition et de manipulation de données (SQL), les types de données SQL, la création des tables, la
modification d’un schéma relationnel. Dans le cadre de ce cours, l’enseignant mettra l’accent sur le
modèle relationnel.
Objectifs
1. Appréhender le concept de base de données.
2. Comprendre le modèle relationnel.
3. Etre capable d’écrire des requêtes en SQL.

Contenu
A) concepts de base
1. Introduction aux notions de base de données.
2. Définitions
3. Historique des SGBD
4. Composants des systèmes de gestion de bases de données
5. Objectifs des systèmes de gestion de bases de données
6. Architecture de SGBD
7. Cycle de vie du système d'information

B) Modèle Conceptuel (MCD)


C) Le modèle Relationnel(MLD)

D) L’algèbre relationnelle

E) Le langage SQL
1. SQL langage de définition des données
2. SQL langage de manipulation des données
3. SQL langage de contrôle des données

E) Evaluation
Intra 30 %
Devoir individuel 30%
Examen Final 40%

Page 1 of 7
Introduction aux bases de données
Définitions

Une base de données est un ensemble de données structurées modélisant une partie du monde réel. Elle est
abordée en pratique selon différents points de vue :
▪ pour un utilisateur, une base de données est un espace où il peut enregistrer des informations, les retrouver
et les faire traiter automatiquement par un ordinateur;
▪ pour un développeur, une base de données est un ensemble de tables, de relations et de procédures écrites
en SQL (Structured Query Language) donc un ensemble d'informations sur un sujet qui est exhaustif, non
redondant et structuré,
▪ pour un administrateur informatique, une base de données est un ensemble de données à sauvegarder et
sécuriser.

Donnée : Représentation d’un élément d’information, tel qu’un chiffre ou un fait, codé dans un format permettant
son stockage et son traitement par ordinateur (Data).

Type de donnée :Determine la nature du codage utilisé pour représenter une donnée élémentaire et les opérations
applicables à cette donnée. Les types les plus courants sont : entier, réel, texte, date, image, etc. (Data type).

Information : Une information est une donnée ou un ensemble de données qui a ou ont été interprétée(s)
(Information).

Un SGBD est un logiciel permettant aux utilisateurs d’insérer, de modifier et de rechercher efficacement des
données d'une base de données(MySQL,ACCESS, ORACLE, SQL SERVER …

Logiciel, le plus souvent produit par un éditeur commercial, qui gère et contrôle l’accès à une base de données,
assurant ainsi une interface normalisée entre les applications et les bases de données (Database management
system).

Système basé sur des fichiers : Ensemble de programmes d’application qui exploitent ses propres fichiers de
données pour répondre aux besoins spécifiques d’un groupe d’utilisateurs finaux (File-based system).

Fichier de donnee : Ensemble d’enregistrements identifié par un nom, qui constitue une unité logique de stockage
de données pour un ordinateur (Data file).

Enregistrement : Groupe de données apparentées, structuré et considéré comme un tout. Chaque donnée du
groupe occupe un champ de l’enregistrement. Un champ est défini par son nom, une position dans
l’enregistrement et le type de données qu’il permet de stocker (Record).

1. Historique

Quatre générations de Système de Gestion Base de données ont déjà vu le jour. La première génération des années
70 correspondait au modèle hiérarchique puis réseau. La deuxième génération des années 80 est basée sur le modèle
relationnel. Les principaux systèmes sont ORACLE, INGRES, SYBASE, INFORMIX, DB2 et SQL SERVER. La
troisième génération, des années 90 a vu l'apparition du modèle objet, l'intégration des objets au modèle relationnel
ainsi que bases de données reparties. La quatrième génération, des années 2000 supporte l'Internet ( Data Web), les
objets multimédias (Data Media), l’aide à la prise de décisions (Data Warehouse) et l’extraction de connaissances à
partir des données(DataMining).

Page 2 of 7
Introduction aux bases de données
le modèle hiérarchique : les données sont classées hiérarchiquement, selon une arborescence
descendante. Ce modèle utilise des pointeurs entre les différents enregistrements. Il s'agit du
premier modèle de SGBD

le modèle réseau : comme le modèle hiérarchique ce modèle utilise des pointeurs vers des
enregistrements. Toutefois la structure n'est plus forcément arborescente dans le sens
descendant

le modèle relationnel : les données sont enregistrées dans des tableaux à deux dimensions
(lignes et colonnes). La manipulation de ces données se fait selon la théorie mathématique des
relations

le modèle objet: les données sont stockées sous forme d'objets, c'est-à-dire de structures
appelées classes présentant des données membres et des méthodes.

le modèle objet-Relationnel: Le modèle relationnel présente des points forts indiscutables,


mais aussi des points faibles d’où l’intérêt d’une intégration douce. le modele relationnel ne
permettait que la gestion de données alphanumériques. Avec l’avènement du Web au milieu de
la décennie 90, la nécessité de supporter des données complexes au sein de la base de données
s’est amplifiée. Ces données complexes peuvent être des documents textuels, des données
géométriques, géographiques, audiovisuelles ou soniques.
Base de données décisionnelles: les données sont stockées sous forme multidimensionnels Un
cube permet la visualisation et l’analyse de la donné selon trois axes. Par exemple, un chiffre
d’affaire sera représenté dans un espace 3-D, en fonction du temps, des produits vendus et de la
géographie

Datawarehouse. Un entrepôt de données est un ensemble de données historisées variant dans


le temps, organisé par sujets, agrégé dans une base de données unique, aidant à la prise de
décision dans l’entreprise

Data mining. Il s’agit d’un ensemble de techniques d’exploration de larges bases de données
afin d’en tirer les liens sémantiques significatifs et plus généralement des règles et des modèles
pour la compréhension (par exemple pour comprendre vos habitudes ) et la prise de décision

Base de données reparties Ensemble de bases localisées sur différents sites, perçues par
l'utilisateur comme une base unique. Chaque base possède son schéma local

Page 3 of 7
Introduction aux bases de données
2. Composants

Les différents composants d’un sgbd sont : Le catalogue système, Le gestionnaire de


requêtes et Le gestionnaire de transactions

Le catalogue système ou dictionnaire de données est un composant au coeur de la


communication entre les autres composants. Il contient toutes les méta-données utiles
au système. Ces méta-données correspondent à la description des données (type, taille,
valeurs autorisées, etc.), aux autorisations d’accès, aux vues et autres éléments
systèmes.

Le gestionnaire de requêtes est responsable du traitement des commandes des


utilisateurs visant à stocker, rechercher et mettre à jour des données dans la base de
données. En utilisant les informations stockées dans le catalogue, il interprète ces
requêtes et les traduit en des requêtes d’accès physique aux données susceptibles d’être
traitées par le système.

Le gestionnaire de transactions est responsable de traiter les transactions. Une


transaction est un ensemble d’opérations d’accès et de mise à jour de données émises
par un utilisateur. Ces opérations doivent être traitées comme un tout .C'est la partie
chargée du contrôle de la concurrence des accès aux données. Elle doit être telle que
chaque utilisateur attendre le moins possible ses données tout en étant certain d'obtenir
des données cohérentes en cas de mises à jour simultanées de la base.

3. Objectifs

Les objectifs sont les suivants :

Indépendance physique : La façon dont les données sont définies doit être indépendante des structures de stockages
utilisées.

Indépendance logique : Un même ensemble de données peut être vu différemment par des utilisateurs différents.

Manipulations des données par des non informaticiens :Il faut pouvoir accéder aux données sans savoir
programmer ce qui signifie des langages "quasi naturels".

Efficacité des accès aux données : Ces langages doivent permettre d'obtenir des réponses aux interrogations en un
temps "raisonnable". Ils doivent donc être optimisés et, entre autres, il faut un mécanisme permettant de minimiser le
nombre d'accès disques.

Non redondance des données


Afin d'éviter les problèmes lors des mises à jour, chaque donnée ne doit être présente qu'une seule fois dans la base.

Cohérence des données : Les données sont soumises à un certain nombre de contraintes d'intégrité qui définissent
un état cohérent de la base. Elles doivent pouvoir être exprimées simplement et vérifiées automatiquement à chaque
insertion, modification ou suppression des données.

Partage des données : Il s'agit de permettre à plusieurs utilisateurs d'accéder aux mêmes données au même moment.
Page 4 of 7
Introduction aux bases de données
Si ce problème est simple à résoudre quand il s'agit uniquement d'interrogations et quand on est dans un contexte
mono-utilisateur, cela n'est plus le cas quand il s'agit de modifications dans un contexte muti-utilisateurs. Il s'agit
alors de pouvoir :
1. permettre à deux (ou plus) utilisateurs de modifier la même donnée "en même temps" ;
2. assurer un résultat d'interrogation cohérent pour un utilisateur consultant une table pendant qu'un autre la
modifie.

Sécurité des données


Les données doivent pouvoir être protégées contre les accès non autorisés. Pour cela, il faut pouvoir associer à
chaque utilisateur des droits d'accès aux données.

Résistance aux pannes


Il faut pouvoir, lorsqu 'une panne arrive, récupérer une base dans un état "sain". Ainsi, après une panne intervenant
au milieu d'une modification deux solutions sont possibles : soit récupérer les données dans l'état dans lequel elles
étaient avant la modification, soit terminé l'opération interrompue.

4. Architecture des SGBD

Les SGBD reposent sur trois niveaux d’abstraction qui assurent l’indépendance logique et physique des données,
autorisent la manipulation de données, garantissent l’intégrité des données et optimisent l’accès aux données.

Le niveau externe Il regroupe toutes les possibilités d’accès aux données par les différents usagers. Ces accès,
éventuellement distants, peuvent se faire via différents types d’interfaces et langages plus ou moins élaborés. Ce
niveau détermine le schéma externe qui contient les vues des utilisateurs sur la base de données c’est à dire le sous-
ensemble de données accessibles. Il peut donc exister plusieurs schémas externes représentant différentes vues sur la
base de données.

Le niveau conceptuel Il correspond à la vision des données générale indépendante des applications individuelles et
de la façon dont les données sont stockées. Cette représentation est en adéquation avec le modèle de données utilisé.
Dans le cas des SGBD relationnels, il s’agit d’une vision tabulaire où la sémantique de l’information est exprimée en
utilisant les concepts de relation, attributs et de contraintes d’intégrité. Le niveau conceptuel est défini au travers du
schéma conceptuel.

Le niveau physique. Il regroupe les services de gestion de la mémoire secondaire. Il s’appuie sur un système de
gestion de fichiers pour définir la politique de stockage ainsi que le placement des données. Ce niveau doit également
assurer le partage des ressources, la gestion de la concurrence et des pannes.

Page 5 of 7
Introduction aux bases de données
5. Elaboration

Le schéma conceptuel : représente le contenu de la base en termes


conceptuels, indépendamment de toute considération informatique. Il
s'agit donc d'une représentation des données, facilement compréhensible,
permettant de décrire le système d'information à l'aide d'entités (ou objet
ou classe),

Le schéma logique: résulte de la traduction du schéma conceptuel en un


schéma propre à un type de BD (hiérarchique, réseau, relationnelle, objet)
Il consiste à décrire la structure de données utilisée sans faire référence à
un langage de programmation. Il s'agit donc de préciser les types de
données utilisées.
Auteur ( Id_a , Nom_a, prenom_a, date_naissance_a)

Le schéma physique: est la traduction du schéma logique en langage


SQL:
6. Cycle de vie du système d'information

Le modèle relationnel

Le modèle relationnel a été proposé par E.F. Codd en 1970. Il est souvent considéré comme le plus simple et le plus élégant des
modèles. Sa simplicité est due à une vision tabulaire des données. Son élégance résulte de bases formelles issues de la théorie des
ensembles. Les données sont manipulables de requêtes écrites à partir du langage SQL qui permettent de spécifier ce que l'on
souhaite obtenir. Le SGBD étant responsable de la politique d'exécution des requêtes.

Lien entre le modèle Entité Association et le modèle relationnel


— Association; Entité →Table (relation)
— Propriété →Attribut
— Identifiant →Clé Primaire

Page 6 of 7
Introduction aux bases de données

Concept Définition
Ensemble de données relatives à un même concept dans un modèle. Elle est
Table/ Relation
constituée de lignes et de colonnes
Propriété d'une relation correspondant généralement à une colonne dans une table
Attribut/Champ
de la base de données.
Un domaine est un ensemble de valeurs d’un attribut caractérisé par un type de
Domaine
donnée et une taille
Élément horizontal dans une table représentant une énumération des valeurs des
Enregistrement
différents attributs (colonne) pour une même référence (identifiant).
Dictionnaire de donnée d’une
Tableau identifiant pour chaque attribut d’une relation son domaine et son rôle
relation
Schéma de relation L’ensemble des attributs de la relation
Identifiant d'une table composée d'un ou plusieurs attributs ou colonne. Elle
permet de retrouver sans ambiguïté chaque ligne de la table. Les valeurs d'une
Clef primaire
clef primaire doivent être unique au sein de la table. Elle est soulignée lors de la
définition du schéma
Colonne, ou groupe de colonne représentant une clef primaire d'une autre table,
Clef étrangère
insérée afin d'assurer la relation entre les deux tables.
Contrainte d’intégrité Règles de contrôle de cohérence des valeurs prises par les clés et les champs
Contrainte d’intégrité de relation chaque valeur de la clé primaire est unique et non nulle
Contrainte d’intégrité référentielle Chaque valeur de la clé étrangère existe dans la table référencée
chaque valeur d’un attribut appartient à un domaine bien déterminé
Contrainte d’intégrité de domaine
Erreur générée lorsque l'on tente d'insérer une ligne avec une valeur de clef déjà
Violation contrainte utilisée ou pour des valeurs de colonne hors des domaines ou une valeur de clé
étrangère n’existant pas dans la table référencée

EXERCICE1
On considère le schéma relationnel suivant :
PILOTE (numpilote, nom, prenom, datenaissance, salaire)
AVION (numavion, capacite, type)
VOL (numpilote, numavion, datevol, villedepart, villearrive)
1- Identifier les différentes clés primaires et étrangères
2- Donner le dictionnaire de données de chaque relation du schéma relationnel
3- Représenter graphiquement le schéma relationnel.
4- Insérer deux enregistrements dans chaque relation en tenant compte des règles de contraintes d’intégrité

Algèbre relationnel

Le langage SQL

Page 7 of 7

Vous aimerez peut-être aussi