Bases de Donnees Relationnelles´ - lis-lab.fr...Les trois niveaux de l’ANSI-SPARC Pour faciliter...
Transcript of Bases de Donnees Relationnelles´ - lis-lab.fr...Les trois niveaux de l’ANSI-SPARC Pour faciliter...
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Bases de Donnees Relationnelles
Cecile Capponi – Remi [email protected]
Universite d’Aix-Marseille
L3 Informatique
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Organisation
Organisation de l’UE
• Cours : tous les lundis• TD et TP (sous Oracle) : lundis• Au debut de chaque cours : parfois une petite evaluation (QCM 10mn).• Derniere seance de TP : une evaluation TP.• Evaluation (examen E , TP) : max( (2E+TP)/3 ; E )• Tous les supports sur Ametice
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Organisation de l’UE (cont’d)
Plan du cours• Vaste introduction• Le modele relationnel• Le langage SQL• Complements
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Plan
Bases de donnees : de quoi parlons-nous ?
Systeme de Gestion de Bases de Donnees
Modelisation des donnees
Mise en oeuvre des SGBDs
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Ou trouver des bases de donnees ?Partout (ou presque)
• Medecine• Biologie• Astronomie• Geographie• Administrations• Commerce et marketing• Production et gestion des stocks• Audiovisuel, arts• Tourisme, loisirs
Internet 2.0
Gestion des donnees personnelles
• Agenda• Repertoire• Bibliotheque
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Qu’est-ce qu’une base de donnees ?
DefinitionUne base de donnees regroupe, au sein d’un stockage informatique de hautniveau, un ensemble de donnees de facon suffisamment organisees pourque ces donnees puissent etre facilement :
• retrouvees,• interrogees,• enrichies,• mises a jour,• supprimees,• comparees.
sans perturber la cohesion de l’ensemble.
Importance de la structure de l’ensembleL’organisation structuree de l’ensemble de donnees explicite sa cohesion.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Plus fort qu’un fichier excel !
Plus expressif que des tableaux.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Exemples et contre-exemples
Guess
1. Toute source de donnees
2. Un fichier texte
3. Un ensemble de fichiers texte
4. Un site internet quelconque
5. Le web dans son ensemble
6. Un repertoire de telephone
7. L’ensemble des informations utilisees par la SNCF pour le commerce debillets de train
8. La gestion des abonnes d’une bibliotheque
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Les usagers des bases de donneesLes usagers interactifs
• Une personne quelconque, qui n’est pas toujours consciente qu’elleutilise une base de donnees.
• Une personne qui visualise des donnees via une interface conviviale(consultation d’horaires, consultation d’un catalogue de bibliotheque,achat en ligne d’un velo, etc.)
Les programmeurs d’applications
• Construisent les interfaces destinees aux usagers interactifs• Specialistes de langages informatiques propres a la manipulation et au
rendu de donnees (SQL, SPARQL, etc.)• Developpeur Web
Les administrateurs• (Definissent) maintiennent et securisent la base de donnees• Possedent plus de droits sur la base• Une competence recherchee
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Types de bases de donnees
Les Bases de donnees personnelles : 10 a 100 KoUn repertoire telephonique, une CDtheque, etc.
Les Bases de donnees professionnelles : 100 Ko a 100 GoLes donnees clients d’une PME, le catalogue produits d’une pharmacie, lesdonnees administratives des patients d’un hopital, etc.
Les tres grandes Bases de donnees : plus de 100 GoLes donnees des voyages SNCF (1.5 To en 2006), qui s’appuient surd’autres bases de donnees.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Plan
Bases de donnees : de quoi parlons-nous ?
Systeme de Gestion de Bases de Donnees
Modelisation des donnees
Mise en oeuvre des SGBDs
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Qu’est-ce qu’un Systeme de Gestion de Bases de Donnees ?Le SGBD Oracle est a une base de donnees, ce que Word est a un fichier.doc
Objectif
• Logiciel pour simplifier la tache de tous les usagers.• Aider au developpement et a l’exploitation des Bases de Donnees
CaracteristiquesLangage(s) specifique(s) pour :
• definition, programmation, et acces a la base de donnees ;• controle et securite des bases de donnees ;• optimisation des acces aux bases de donnees
Un logiciel de gestion
• Gestion des couches physiques et logiques• Outre les outils indispensables, modules supplementaires (generateurs
de rapports, utilitaires statistiques, interface web, outils de fouille, etc.)• Il existe plusieurs SGBDs...
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Historique des SGBDs
Comment stocker les informations d’Apollo (1950-1960) ?
• Approche basee sur des fichiers• Fichiers relies par des pointeurs• Le programme gere les fichiers
• Structure du stockage visible• Dependance donnee - programme• Redondance des donnees :
problemes de maintenance• Lenteur
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Historique des SGBDs
La pre-histoire (1960-1970)
• Approche navigationnelle (Bachman)• A base de fichiers geres par des arborescences de pointeurs
• Redondance limitee• Parcours toujours depuis racine, un record a la fois : encore couteux• Premiers vrais SGBD : approche toujours utilisee (IDS2, IMS2,
PHOLAS)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Historique des SGBDs (cont’d)
La revolution (1970) : le modele relationnel
• Publication de A Relational Model of Data for LargeShared Data Banks, juin 1970, par Edgar FrankCodd d’IBM
• Idees qui ont permis a Oracle Corporation de secreer (Larry Elisson), IBM n’ayant pas reagi
• Premier SGBD : 1980• Idee majeure : Independance des donnees
Succes du modele relationnel• Simplicite des concepts de base• Cadre theorique simple• Fonde sur un modele des donnees (donc respect de l’integrite)• Approche declarative de haut niveau (SQL)• SGBDs performants• Portabilite des bases et des applications
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Historique des SGBDs (cont’d)
Inconvenients du modele relationnel• Types de donnees predefinis (non adapte aux donnees complexes)• Modelisation conceptuelle assez pauvre• Trop grande separation donnees / procedures• Theorie relationnelle non entierement exploitee (e.g. : contraintes
d’integrite)• Grand ecart entre SQL et langages de programmation• Non adapte a la fouille de donnees
SGBDs relationnelsLa plupart des SGBDs utilises sont relationnels :
• Oracle (1979)• PostgreSQL (1985)• Microsoft SQL Server (1989)• Microsoft Access (1992)• MySQL (1995)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Historique des SGBDs (cont’d)
L’ere post-revolutionnaire : les evolutions• Pour des applications de plus en plus complexes
1. Approches orientees-objet2. Approches par documents semi-structures (echanges de donnees)
• Pour prendre en consideration les idees de l’intelligence artificielle1. Bases de donnees deductives2. Outils de fouille de donnees3. Business Intelligence
• Absence de standards, absence de theorie unifiee• Avenir de no-sql ?
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Plan
Bases de donnees : de quoi parlons-nous ?
Systeme de Gestion de Bases de Donnees
Modelisation des donnees
Mise en oeuvre des SGBDs
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Modeliser pour structurer le reel
Separer description et manipulation des donneesNorme ANSI-SPARC
Description specification des structures des donnees, et de leurs types
Manipulation operation d’interrogation, d’insertion, de mise a jour, desuppression, etc.
ExempleLivres d’une bibliotheque
Description annee de la premiere edition, auteur(s), titre, editeur, langueoriginale, [traducteur], etc.
Manipulation ajouter livre, rechercher un livre a partir de son titre,emprunter un livre, etc.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Description des donneesDefinitionDonnees = ensembles d’entites relies par des associationsAssociations = ensembles de liens
Exemple : base de donnees cinematographiqueDonnees = ensemble des films, ensemble des acteurs, ensemble des liensentre les films et les acteurs
Decrire les donnees = definir tous ces ensembles via leurs proprietes(caracteristiques).
Notions essentielles• Type de donnees : construction informatique specifiant un ensemble de
valeurs (donnees) et les operations manipulant ces valeurs• Instance : une donnee particuliere appartenant a un type specifie,
munie d’un identifiant.• Modele de description specification d’un ensemble de types de
donnees.• Schema mise en oeuvre d’un modele de description a l’aide d’un
Langage de Description des Donnees (LDD souvent algebrique).
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Exemples de description de donnees
Le type EntierLe type Entier, muni des operations standards de l’arithmetique, est un typede donnees elementaires.La valeur 12 est une valeur de ce type.La specification age=12 est une donnee.
Le type FilmLe type Film, a comme proprietes (caracteristiques) : titre,realisateur, langues, acteurs, duree, annee, etc. Il est munid’operations internes comme traduire. C’est un type compose.
Une instance de FilmLe film dont les proprietes sont ’Usual Suspects’, ’Bryan Singer’,[’anglais’, ’francais’], [’Byrne’, ’Spacey’, ’DelToro’], 108, 1994 est une instance du type Film dont l’identifiantpourrait etre le produit cartesien de chaque propriete nommee.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Niveaux d’abstraction d’un modele de donnees
Les trois niveaux de l’ANSI-SPARCPour faciliter construction, maintenance et evolution des bases de donnees :specification de la facon dont on passe de la vision de chaque utilisateurjusqu’a la representation en machine
schema interne – schema conceptuel – schemas externes
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Le niveau conceptuelNiveau le plus importantDetaille avant la realisation de la base, car il conditionne
• les autres niveaux (vues des usagers exterieurs, et dev. dans le SGBD),• la qualite de la base,• la coherence des donnees a venir
Niveau conceptuel et modelisation du domaine
• Correspond a l’explication et la description semantique des concepts etrelations du domaine modelise
• Independant du SGBD, il reflete une realite coherente du domaine etdes acteurs de ce domaine
Couverture du niveau conceptuel
• Reference aux concepts elementaires (duree d’un film = entier positif quicorrespond au nombre de minutes)
• Definition des types composes : regroupement des proprietes nommeesd’un ensemble d’objet.
• Specification des regles qui doivent etre respectees (ex. un acteur doitobligatoirement avoir tourne dans un film)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Le niveau conceptuel (cont’d)
Exemples de types composes et d’association
FILM(titre, annee, duree, nbPrix, realisateur)ACTEUR(nom, prenom, dateNaissance, genre)
CASTING(FILM, ACTEUR, personnage)
Types et instancesLe niveau conceptuel ne specifie pas les instances de types oud’associations, mais on les imagine...
F 1(’La vie est belle’, 1998, 117, 6,’Roberto Benigni’)
A 1(’Benigni’, ’Roberto’, 1952 ’M’)A 2(’Braschi’, ’Nicoletta’, 1960, ’F’)
C 1(F 1, A 1, ’Guido Orefice’)C 2(F 1, A 2, ’Dora’)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Le niveau interne (ou physique)
Il derive du niveau conceptuel
• Niveau le plus proche de l’implantation• Concerne la facon dont les donnees sont stockees• Partiellement lie au choix du SGBD
Couverture du niveau interne• Les fichiers contenant les donnees• Les articles de ces fichiers (longueur, mode de placement, etc.)• Le mode d’acces a ces articles (pointeur, index, etc.)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Le niveau externe
Il depend du niveau conceptuelIndependant du niveau interne, chaque niveau externe :
• specifie des vues differentes associees aux differents groupesd’utilisateurs,
• specifie ses droits d’acces
Plusieurs niveaux externes possibles
• Exemple de la base SNCF : vues differentes (DRH, controleurs,conducteurs, usagers, etc.)
• Base cinematographique :
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Grossierement a la FNAC...
SAVproduits
mp3paiement
carte_fidelitépromotionscodes_barres
prixHT
stock
magasinsemployés
publicités
concert
contrats
forum
ordinateursphoto
congésclients
ventes
fournisseursphoto
web
clients
clients
chef de rayon
clients fidèles
caissier
directeur magasin
interne conceptuel externe
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Le modele entite-relationObjectifPour realiser un schema conceptuel, le modele E-R permet de decrirevisuellement les types composes (les entites) et les liens qu’ils entretiennent(les relations).
Notions principales
• Agregation : construction d’un objet complexe a l’aide d’objets pluselementaires
• Distinction entre agregations de donnees elementaires (ce qui composele type FILM), et relations entre entites (la relation CASTING).
• Entite = agregation d’attributs elementaires• Une relation peut s’etablir entre des entites, et posseder des attributs.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Plan
Bases de donnees : de quoi parlons-nous ?
Systeme de Gestion de Bases de Donnees
Modelisation des donnees
Mise en oeuvre des SGBDs
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Caracteristiques des SGBDsIndependance programmes / donneesGestion des donnees en respectant l’independance des programmes auxdonnees, tant aux niveaux logique que physique.
• Niveau physique = les aspects materiels de stockage et d’acces• Niveau logique = les aspects fonctionnels d’organisation, de
recuperation, et de manipulation.
Independance physique
• Si modification du schema interne, les programmes d’applications nesont pas modifies (ajout de fichier, suppression d’index, etc.)
• Modifier les proprietes de stockage ne doit pas alterer le schemaconceptuel
• Quid de l’inverse ? Non.
Independance logique
• Si modification d’un schema externe, les autres schemas externes et leschema conceptuel ne doivent pas etre touches
• Quid de l’inverse ? Partiellement.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Manipulation a l’aide d’un langage NON-procedural
Le Quoi plutot que le Comment, HTML versus Java
Garantir l’independance
• Un usager voit les donnees independamment de leur implementation enmachine
• Consultation des donnee affranchie du schema interne• Le moyen physique d’acceder et de mettre a jour les donnees est la
probleme du SGBD, pas du programmeur
Langages de tres haut niveau
• Pour s’adresser a la base de donnees via entites nommees, relationsnommees, et proprietes nommees
• Base sur l’algebre et la logique du premier ordre• Plusieurs classes selon usager
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Administration des donnees
Cycle de vie d’une base de donnees
1. Description (trois niveaux)
2. Creation
3. Evolution (des trois niveaux), schema et donnees
Faciliter la gestionNecessite d’outils d’administration, aide a la gestion de la coherence
Coherence des donneesLe SGBD doit veiller a cette coherence, sur la base de ce que leprogrammeur a exprime declarativement – via contraintes d’integrite etdeclencheurs.
• Respect des proprietes elementaires (la duree d’un film est positive, lenom d’un acteur ne doit pas etre inconnu alors qu’on accepte que ladate d’un film le soit, etc.)
• La modification ou la suppression de donnees peut alterer les autres(enlever un acteur de la base doit mener a enlever toutes les donneesde casting qui impliquaient cet acteur)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Efficacite des acces aux donnees
Mesures• debit (nombre de transactions elementaires par seconde)• temps de reponse (temps moyen pour une requete type)
Objectifs des SGBDs : etre bons !
• Les petites requetes ne doivent pas attendre la fin des grandes,• Probleme : acces disque (10 ms), solutions inspirees des systemes
d’exploitation (ex. tampon en memoire vive)• Autre probleme : langages de haut niveau.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Partage et securite des donnees
Acces concurrentsLes donnees (une ressource) sont accessibles simultanement par plusieursusagers (toute type d’usager, lecture et ecriture).
La notion de transactionUne transaction est un programme consultant ou modifiant une base dedonnees, dont l’execution est indivisible.
• Exemple : reservation d’un billet de train (acces simultane au memesiege)
• Deux transactions concurrentes ne doivent pas etre emmelees pourassurer la coherence : on reserve pour Paul de Nantes puis pourJacques de Nancy (sans que cela ne se voit...)
Securite des donnees• Restauration a l’identique apres une panne (transaction interrompue ?)• Gestion des droits d’acces
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Fonctionnalites des SGBDs
Quelques exemples de fonctionnalites pour atteindre les objectifs.• Langage de description des donnees• langage de modification des donnees• Langage d’interrogation des donnees• Fonctions de transformation des donnees• Fonctions de gestion de l’integrite
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Description des donnees
Reservee aux administrateurs (et concepteurs) : comment sont structureeset rangees les donnees (schema conceptuel et ce qui en decoule)
Un langage dedie
• LDD algebrique (type LDD de SQL)• 3 niveaux de langages (interne a externe)• Assistance graphique• Controle d’integrite par le SGBD a chaque transaction
Exemple
CREATE TABLE Film ( titre TEXT, annee DATE,duree INTEGER, nbPrix INTEGER,realisateur VARCHAR) ;
CREATE INDEX idxFilmAnnee ON Film (annee) ;
Integrite : avant que la table Film soit creee : il ne doit pas y avoir une tableFilm deja existante (sinon, message d’erreur du SGBD)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Interrogation des donnees (requetes)
Une fonctionnalite majeure des SGBDs
Quels sont les trains au depart de Marseille et arrivant a Lille, le 25 octobre2015 a partir de 12h, ayant des places disponibles en deuxieme classe ?
Un langage assertionnel dedieIndications pour retrouver les donnees par leur contenu, en fonction de ladescription (schema conceptuel) et de ce qui est accessible dans le schemaexterne.
Notion de qualification
• Propre a SQL, c’est une expression logique impliquant des criteressimples.
• Pour comparer les donnees entre elles, ou avec des valeurs donnees
Notion de navigationDes operateurs utiles pour parcourir les relations entre entites : la navigationpermet de construire des requetes complexes.
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Interrogation des donnees (requetes) (cont’d)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Interrogation des donnees (requetes) (cont’d)
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Interrogation des donnees (requetes) (cont’d)
Exemple (SQL)Selection des films ayant ete realises apres 1997
SELECT titreFROM FilmWHERE annee > TO_DATE(’1997’, yyyy) ;
Autre exemple (SQL, avec resultat IMDB)Selection du nombre de prix que chaque film (indique par son titre et le nb depris obtenus) a obtenu, a condition que le titre contienne le mot suspect, etque le film ait ete realise apres 1990.
SELECT titre, nbPrixFROM FilmWHERE titre LIKE ’%suspect%’ AND annee > 1990 ;
’The usual suspects’ 18’Prime suspect’ 5’Suspect down’ NULL
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Ajout, modification et suppression de donnees
Un langage dedie
• partie du LMD (modif donnees), et partie du LDD (modif description)• Ajout, modification et suppression en toute coherence : importance de
specifier (lors de la description de la base), les contraintes a respecter• Criteres de modification, de suppression• Lors d’une suppression : consequences en cascade a prevoir (si
possible des la description de la base)
ExemplesAjout d’un champ dans la table Acteur, puis ajout des initiales pour chaqueacteur :ALTER TABLE Acteur ADD (initiales VARCHAR) ;UPDATE TABLE ActeurSET initiales = FIRST(nom)+.+first(PRENOM)+’.’ ;Ajout d’un filmINSERT INTO Film (’Into the wild’, TO DATE(’2008’, yyyy),147, 0, ’Penn’) ;Suppression de donneesDELETE FROM Casting WHERE personnage = ’Popeye’ ;
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Transformation de donnees
interne ⇔ conceptuel =⇔ externeRegles de correspondances definies par concepteur
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Gestion de l’integrite
Fonctionnalite importante des SGBDs
Explicitation des regles de coherence
• Le concepteur exprime les regles a l’aide du langage dedie• Le SGBDs garantit le respect de ces regles
Differents types de contraintes
• Chaque instance d’entite est munie d’un identifiant uniqueContrainte de cle primaire
• Une relation associe deux entitesContrainte referentielle
• Les valeurs des attributs d’entites doivent appartenir a un ensembleprecise (sous-ensemble d’un type de donnees)
Contrainte de domaine
Bases de donnees : de quoi parlons-nous ? Systeme de Gestion de Bases de Donnees Modelisation des donnees Mise en oeuvre des SGBDs
Bibliographie indicative
Quelques livres
• Bases de donnees, par J.L. Hainaut, Dunod (2009)• Bases de donnees relationnelles, par C. Christment et al.,
Hermes-Lavoisier (2008)• Algebre relationnelle, par M. Clouse, Eni, 2008.
Sur internet• http://sql.developpez.com/
• http://oracle.developpez.com/faq/
•http://www.oracle.com/technetwork/indexes/documentation/index.html
•http://www.oracle.com/pls/db112/homepage?remark=tahiti