Cours de Base de Donn ´ees Cours n.1
M1 SVS
Elisabetta De Maria - http://www.i3s.unice.fr/∼edemaria/
UFR Sciences et Laboratoire I3S, CNRS
2017-2018
Universit ´e de Nice Sophia-Antipolis
Plan du cours
• Introduction aux bases de donn ´ees et aux SGBD
• Le mod `ele relationnelle
• PhPMyAdmin
• Le langage SQL (d ´efinition et manipulation de donn ´ees)
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
• Protein Data Bank
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