Cours de Base de Donn ´ees Cours n.1
L2 Informatique
Elisabetta De Maria - http://www.i3s.unice.fr/∼edemaria/
UFR Sciences et Laboratoire I3S, CNRS
2020-2021 Universit ´e C ˆote d’Azur
Edt
• 12 CM de 1h30 le mardi `a 8h30
• TD toutes les semaines
• TP une semaine sur deux
Evaluation
Contr ˆole continu
• 1 ´ecrit (CC) de 45 min (35%)
• 1 note de suivi de TD/TP (15%)
• 1 ´ecrit (CT) de 1h30 (50%)
• Deuxi `eme chance : note de CT
• Pour les non assidus, la deuxi `eme session sera une
´epreuve orale.
Objectif
• Savoir ce qu’est un SGBD
• Comprendre l’apport des bases de donn ´ees
• Connaˆıtre le mod `ele relationnel
• Apprendre plusieurs styles de langage (Graphique, Alg ´ebrique, Textuel)
• Apprendre des m ´ecanismes avanc ´es: journalisation, transaction...
• Mettre en œuvre une base de donn ´ees : prise en compte des probl `emes d’optimisation, de gestion des droits d’acc `es
• Comprendre les probl `emes li ´es `a la conception de gros syst `emes d’information
Exemples de base de donn ´ees
• Achats au supermarch ´e
• Achats `a l’aide d’une carte de cr ´edit
• R ´eservation d’un voyage dans une agence
• Visite `a la biblioth `eque de la ville
• Etudes `a l’Universit ´e
Syst `eme de gestion de base de donn ´ees (SGBD)
Definition (Base de donn ´ees)
Une collection partag ´ee de donn ´ees en relation logique et une description des donn ´ees, conc¸ues pour satisfaire les besoins d’information d’une organisation.
Definition (Syst `eme de gestion de base de donn ´ees) Le syst `eme logiciel qui permet `a des utilisateurs de d ´efinir, cr ´eer, mettre `a jour une base de donn ´ees et d’en contr ˆoler l’acc `es
• langage de d ´efinition de donn ´ees (LDD)
• langage de manipulation de donn ´ees (LMD)
Sp ´ecificit ´es d’un SGBD
• Tr `es grande quantit ´e de donn ´ees `a gerer
• Besoin d’interroger, mettre `a jour souvent, rapidement et efficacement ces donn ´ees
• Contr ˆoler la redondance d’information
• Partage des donn ´ees / Acc ´es concurrents
• G ´erer les autorisation d’acc `es / S ´ecurit ´e des donn ´ees
• Offrir des interfaces d’acc `es multiples
• Verifier les contraintes d’int ´egrit ´e
• Assurer la reprise apr `es panne
Mod `ele relationnel
Les principaux concepts
• Relation/Table
• Identifiant/Cl ´e primaire
• Identifiant externe/Cl ´e ´etrang `ere
• Domaine
Histoire du mod `ele relationnel
• Mod `ele logique propos ´e en 1970 par Tedd Codd (IBM lab.)
• Bas ´e sur la notion de relations au sens math ´ematique, la th ´eorie des ensembles et la logique des pr ´edicats du 1er ordre
• Premier syst `eme en 1980 : Oracle avec SQL/DS
• Actuellement : DB2, INFORMIX, ORACLE, SQL Server, Ingres, Sybase, Dbase, Access, MySQL, . . .
Terminologie (1)
Definition (Relation)
Une table avec des colonnes et des lignes
Definition (Attribut)
Une colonne nomm ´ee de la relation
Definition (Domaine)
Un ensemble de valeurs admissibles pour un ou plusieurs attributs
Definition (Tuple)
Une ligne dans une relation
Terminologie (2)
Definition (Degr ´e)
Nombre d’attributs d’une relation
Definition (Cardinalit ´e)
Nombre de tuples d’une relation
Definition (Sch ´ema de relation)
Une relation nomm ´e ´e d ´efinie par un ensemble de paires d’attribut et de nom de domaine
Definition (Instance de relation) Ensemble des tuples d’une relation
Terminologie (3)
Definition (Cl ´e candidate)
Ensemble minimum d’attributs qu’identifie de fac¸on unique un tuple au sein d’une d’une relation
Definition (Cl ´e primaire)
La cl ´e candidate choisie pour identifier de fac¸on unique les tuples au sein de la relation
Definition (Cl ´e ´etrang `ere)
Un ensemble d’attributs d’une relation qui correspond `a une cl ´e candidate d’une relation