LE MODELE RELATIONNEL Inventé par T. Codd (IBM Recherche) Publication ACM Concepts pour la description 2. Concepts pour la manipulation 3. Concepts.

Slides:



Advertisements
Présentations similaires
Bases de Données Avancées: Bases de Données Relationnelles
Advertisements

Programme Introduction aux BD et aux SGBD Le modèle relationnel
Optimisation de Requêtes
LE MODELE RELATIONNEL INVENTE PAR T. CODD (IBM SAN-JOSE)
Georges Gardarin 1 LE LANGAGE DE REQUETES SQL l Origines et Evolutions l SQL1 86: la base l SQL1 89: l'intégrité l SQL2 92: la nouvelle norme l SQL3 98:
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Optimisation de Requêtes
Contrôles d'accès aux données
LE LANGAGE SQL Langage de manipulation de données (LMD)
Cours N°2 Base de Données & Langage SQL
1 LE LANGAGE DE REQUETES SQL Origines et Evolutions SQL1 86: la base SQL1 89: l'intégrité.
Cours de Base de Données & Langage SQL
Inventé par T. Codd (IBM Recherche)
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
Optimisation de requêtes
1 G. Gardarin Optimisation de Requêtes  1. Introduction  2. Arbres relationnels  3. Restructuration algébrique  4. Modèle de coût  5. Choix du meilleur.
Sélection de colonnes (la projection)
Le modèle relationnel Plan 1. Concepts descriptifs
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Définition des contraintes Vérification des contraintes Triggers
Le langage SQL.
Les bases de données Séance 4 Construction du Modèle Physique (la BDD)
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
1 Les bases de données Séance 6 L ’extraction de données Le SELECT.
1- Régles de normalisation 2ème partie : normalisation Modèle Conceptuel des Données 2- Les Formes Normales 3- Dépendances Fonctionnelles 4- Recap - Méthodologie.
1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes.
Algèbre relationnelle - 1 / Djamel Berrabah Algèbre relationnelle Modèle relationnel : rappel Algèbre relationnelle.
SQL partie 5 1 LMD create – update – primary key secondary key.
Le langage de définition de données B.T.S. S.I.O – SI3 –
1- Introduction Sommaire Modèle Logique des Données 2- Structure 3- Traduction du MCD en MLD 4- Recap - Méthodologie.
SQL : 4 fonctions d'exploitation de SGBD SQL (Structured Query Language, traduisez Langage de requêtes structuré) est un langage informatique ayant pour.
SQL query - 1 / D. Berrabah SQL : interrogation de BD Requêtes d'interrogation simples Requêtes complexes Agrégats et groupement.
SQL query - 1 UPMC - UFR 919 Ingéniérie - Cours Bases de données (BD-L3) SQL : interrogation de BD Requêtes d'interrogation simples Requêtes complexes.
Les Bases de données Définition Architecture d’un SGBD
L2A Semestre 4 Mehdi Benzine
Environnement du développement de BD ORACLE REPORTS 10g
ملخص Initiation à la sgbdr
Structured Query Language SQL DDL
Intégration du P7 dans l’épreuve E41
Initiation aux bases de données et à la programmation événementielle
LE LANGAGE DE REQUETES SQL
Langage de manipulation de données (LMD)
Structured Query Language
Généralité sur les bases de données
Les bases de données et le modèle relationnel
Langage de Manipulation des Données LMD
1 Présentation projet Base de Données & Langage SQL Bakary DIABY, Insa Rouen Promo. MS-ESD 16/17.
SQL LID – INTERROGATIN DES DONNEES
Initiation aux bases de données sous Access. Plan I.Structure d’une base de données II.Langages de manipulation de données –Algèbre relationnelle (théorique)
Maria Berger - Maîtrise d'AES Algèbre relationnelle.
Manipulation D’Une Base De Données
Structure D’une Base De Données Relationnelle
Langage d’interrogation des Données LID
SQL Structured Query Language
Calcul Scientifique Initiation à SCILB
Introduction en systèmes d’information et bases de données B.Shishedjiev -Introduction en BD 1.
I Copyright © 2004, Oracle. Tous droits réservés. Introduction.
Bases de données sous Access. Initiation aux bases de données  Structure d’une base de données.
Préface Introduction Objectifs du chapitre I-2 Objectifs du cours I-3 Oracle10g I-4 Oracle Database 10g I-6 Oracle Application Server 10g I-7 Oracle Enterprise.
Remarque : Un nombre ou une lettre en gras fait référence à un chapitre entier ou à une annexe entière. A Affichage des dates par défaut 02-06, Ajouter.
Algèbre relationnelle
1. LE LANGAGE SQL DDL Version 2 - Janvier Le langage SQL-DDL
5 Introduction au modèle relationnel 5.1 Concepts de base
Info Bases de données avancées
Définition des contraintes Vérification des contraintes Triggers
62 Modèle relationnel et algèbre relationnelle INT Management.
Bases de Données Relationnelles(1)
Algèbre Relationnelle
1. LE LANGAGE SQL DDL Version 1 - Mai 2009 corrigé le 11/2/2011
Transcription de la présentation:

LE MODELE RELATIONNEL Inventé par T. Codd (IBM Recherche) Publication ACM Concepts pour la description 2. Concepts pour la manipulation 3. Concepts additionnels 1 Le Relationnel

1. CONCEPTS DESCRIPTIFS Ensemble de concepts pour formaliser description d'articles de fichiers plats lala Modèle standardisé mais extensible –––––– Introduction de types de données variés(SQL2) de la dynamique (produits, SQL3) des objets (SQL3) 2 Le Relationnel

Domaine ENSEMBLE DE VALEURS Exemples: –––––––––––––––– ENTIER REEL CHAINES DE CARACTERES EUROS SALAIRE = { } COULEUR= {VERT, ROUGE, JAUNE} POINT = {(X:REEL,Y:REEL)} TRIANGLE = {(P1:POINT,P2:POINT,P3:POINT)} 3 Le Relationnel

Produit cartésien LE PRODUIT CARTESIEN D1x D2x... x DnESTEST L'ENSEMBLE DES TUPLES TELS QUE Vi Exemple: (N-UPLETS) Di –––– D1D2D1D2 ==== {Vert,Jaune,Rouge} {Vrai, Faux} 4 Le Relationnel Vert Vrai Vert Faux Jaune Vrai Jaune Faux Rouge Vrai Rouge Faux

Relation SOUS-ENSEMBLE DU PRODUIT CARTESIEN LISTE DE DOMAINES D'UNE Une relation estcaractériséeparununnom Exemple: –––– D1 = COULEUR D2 = BOOLEEN 5 Le Relationnel CoulVins Coul Choix Vert Faux Jaune Vrai Rouge Vrai

Attribut VISION TABULAIRE DU RELATIONNEL –––––– Une relation est une table à deux dimensions Une ligne est un tuple Un nom est associé à chaque colonne afin indépendamment de son numéro d'ordre dedelalarepérer ATTRIBUT –––– nom donné à une colonne d'une relation prend ses valeurs dans un domaine 6 Le Relationnel

Graphe d'unerelation Relation binaire R(A1,A2) DOM(A2) Une relation n-aireestestuneune DOM(A1) généralisation dimensions àn 1212 a bcbc DOM(A2) abc DOM(A1) 7 Le Relationnel

Exemplederelation 8 Le Relationnel VINS CRU MILL REGION COULEUR CHENAS 1983 BEAUJOLAIS ROUGE TOKAY 1980 ALSACE BLANC TAVEL 1986 RHONE ROSE CHABLIS 1986 BOURGOGNE BLANC ST-EMILION 1987 BORDELAIS ROUGE

Clé GROUPE D'ATTRIBUTS MINIMUM QUI TUPLE UNIQUE DANS UNE RELATION Exemples: DETERMINEUNUN –––– {CRU,MILLESIME} DANS VINS ==> NV NSS DANS PERSONNE CONTRAINTE D'ENTITE – Toute relation doit posséderau moinsuneclé documentée 9 Le Relationnel

Schéma NOM DE LA RELATION, LISTE DES ATTRIBUTS AVEC DOMAINES, LISTE DES CLES D'UNE RELATION Exemple: ETET –––– VINS(NV: Int, CRU:texte, MILL:entier, DEGRE: Réel, REGION:texte) Par convention, la clé primaire est soulignée INTENTION ET EXTENSION –––– Un schéma de relation définit l'intention de la relation Une instance de table représente une extension de la relation SCHEMA D'UNE BD RELATIONNELLE – C'est l'ensemble des schémas des relations composantes 1010 Le Relationnel

Clé Etrangère GROUPE D'ATTRIBUTS DEVANT APPARAITRE COMME CLE DANS UNE AUTRE RELATION Les clés étrangères définissent les contraintes d'intégrité référentielles – Lors d'une insertion, la valeur des attributs doit exister dans la relation référencée Lors d'une suppression dans la relation référencée les tuples référençant doivent disparaître Elles correspondent aux liens entité-association obligatoires – – 1 Le Relationnel

Exemple de Schéma EXEMPLE BUVEURS (NB, NOM, VINS (NV, CRU, MILL, ABUS (NB, NV, DATE, PRENOM, TYPE) DEGRE) QUANTITE) CLES ETRANGERES ABUS.NV REFERENCE VINS.NV ABUS.NB REFERENCE BUVEURS.NB 1212 Le Relationnel

DiagrammedesLiens 1313 Le Relationnel ABUSNBNBNVDATEDATEQUANTITE BUVEURSNBNOMPRENOMTYPE VINS NVCRUCRU MILL.MILL. DEGRE

Concepts Descriptifs RELATION ou TABLE ATTRIBUT ou COLONNE DOMAINE ou TYPE CLE :Bilan Questions? CLEETRANGERE 1414 Le Relationnel

Synthèse : Create CREATION DES TABLES EN SQL TableTable –––––– CREATE TABLE ( +) [{PRIMARY KEY | UNIQUE} ( +)] avec : –––– ::= [NOT NULL [{UNIQUE | PRIMARY KEY}] ] Exemple : –––––––––– CREATE TABLE VINS (NV INTEGER PRIMARY KEY CRU CHAR VARYING MILL INTEGER NOT NULL, DEGRE FIXED 5.2 ) 1515 Le Relationnel

2. CONCEPTS MANIPULATOIRES Un ensemble d'opérations formelles – Algèbre relationnelle Ces opérations permettent d'exprimer toutes les requêtes sous forme d'expressions algébriques Elles sont la base du langage SQL –––– Paraphrasage en anglais des expressions relationnelles Origine SEQUEL Ces opérations se généralisent à l'objet – Algèbre d'objets complexes 1616 Le Relationnel

Opérations Ensemblistes Opérations pour des relationsdedemêmeschéma –––––– UNIONnotée INTERSECTIONnotée DIFFERENCE notée — Opérations binaires – Relation X Relation --> Relation ExtensionExtension –––– Union externe pour des relationsde schémas différents Ramener au même schéma avec des valeurs nulles 1717 Le Relationnel

Projection Elimination des attributs non désirés et suppression des tuples en double Relation -> notée: (R) Relation A1,A2,...Ap 1818 Le Relationnel VOLNAY BOURGOGNE CHENAS BEAUJOLAIS JULIENAS BEAUJOLAIS (VINS) Cru Région VOLNAY 1983 BOURGOGNE A VOLNAY 1979 BOURGOGNE B CHENAS 1983 BEAUJOLAIS A JULIENAS 1986 BEAUJOLAIS C Cru,Région VINS Cru Mill Région Qualité

Restriction Obtention des tuples de R satisfaisant un critère Q Relation ->Relation,notée Q (R) Q est le critère de qualification dela forme : –––– AiAiValeur { =, =, >, <=, !=} Il estpossible de réaliserdes "ou" simples (union) etdesdes"et" (intersection) de critères 1919 Le Relationnel

ExempledeRestriction MILL> Le Relationnel VINS Cru Mill Région Qualité JULIENAS 1986 BEAUJOLAIS C VINS Cru Mill Région Qualité VOLNAY 1983 BOURGOGNE A VOLNAY 1979 BOURGOGNE B CHENAS 1983 BEAUJOLAIS A JULIENAS 1986 BEAUJOLAIS C

Jointure Composition des deux relations Relation X Relation ->Relation surundomainecommun – notée Critère de jointure – Attributs de même nom égaux : Attribut = Attribut Jointure naturelle – Comparaison d'attributs : Attribut1Attribut2 Théta-jointure 2121 Le Relationnel

ExempledeJointure Le Relationnel VINSREG Cru Mill Qualité Région QualMoy VOLNAY 1983 A Bourgogne A VOLNAY 1979 B Bourgogne A CHABLIS 1983 A Bourgogne A CHABLIS 1983 A Californie B 22 VINS Cru Mill Qualité VOLNAY 1983 A VOLNAY 1979 B CHABLIS 1983 A JULIENAS 1986 C LOCALISATION Cru Région QualMoy VOLNAY Bourgogne A CHABLIS Bourgogne A CHABLIS Californie B

Complétude L'algèbre relationnelle est complète – Les cinq (sept) opérations de base permettent sous forme d'expressions toutes les questions de formaliser que l'on peut poser avec la logique du premier ordre (sans fonction). Exemple : – Nom et prénom des buveurs de volnay 1988 PROJECT (NOM, PRENOM, RESTRICT(CRU="VOLNAY" et MILL =1988, JOIN(VINS, ABUS, BUVEURS))) ? 2323 Le Relationnel

SQL Une requête SQL est un paraphrasage l'algèbre relationnelle en anglais Requête élémentaire : SELECT A1, A2, …Ap FROM R1, R2, …Rk d'uneexpressiondede WHERE Q[{UNION |INTERSECT | EXCEPT } … ] Sémantique du bloc select : PROJECT A1,A2,…Ap ( RESTRICT Q ( PRODUIT ( R1, R2, …, Rk) ) ) 2424 Le Relationnel

3. CONCEPTS ADDITIONNELS Ensemble de concepts pour: –––––– Etendre les fonctionnalités de manipulation Décrire les règles d'évolution des données Supporter des objets complexes (SQL3) Introduits progressivement dans lemodèle: –––––– Complique parfois le modèle Standardisés au niveau de SQL3 (1999) Des extensions multiples … 2525 Le Relationnel

Fonctionet Agrégat FONCTION – Fonction de calcul en ligne attributs appliquée sur un ouplusieurs – Exemple : DEGRE * QUANTITE / 100 AGREGAT – Partitionnement horizontal d'une relation selon les valeurs d'un groupe d'attributs, suivi d'un regroupement par une fonction de calcul en colonne (SUM, MIN, MAX, AVG, COUNT, …) 2626 Le Relationnel

Exemplesd'agrégats SELECT CRU, SUM(QUANTITE) 2727 Le Relationnel SUMSUMCRUQUANTITE CHABLIS VOLNAY MEDOC VINSCRU MILLMILL DEGREQUANTITE CHABLIS VOLNAY MEDOC SELECT AVG(DEGRE) FROM VINS; AVG DEGRE 11.2 SELECT CRU, SUM(QU FROM VINS GROUP BY CRU;

Vue Relation d'un schéma externe déduite par une question Exemple : GrosBuveurs des relationsdelalabase CREATE VIEW GrosBuveurs AS SELECT NB, Nom, Prénom, FROM Buveurs, Abus WHERE Buveurs.NB = Abus.NB and Abus.Quantité > 100 Calcul de la vue – Une vue est une fenêtre dynamique sur la BD et est recalculée à accès. Une vue peut être matérialisée (vue concrète). chaquechaque – 2828 Le Relationnel

Déclencheur (Trigger) Action base de données déclenchée suite événement particulier Forme : àl'apparitiond'un –––– {BEFORE | AFTER} THEN Un événement peut être : une opération sur une table (début ou fin) un événement externe (heure, appel,etc.) – Une action peut être : une requête BD (mise à jour) Une annulation (abort) de transaction l'appel à une procédure cataloguée 2929 Le Relationnel

Déclencheur avec condition (Règle) Il est possible d'ajouter une condition afin de déclencher l'action seulement quand la condition vérifiée estest – Une conditionest une qualificationportantsursurlalabase.base. Exemples BEFORE IF THEN : UPDATE EMPLOYE SALAIRE > ABORT TRANSACTION 3030 Le Relationnel

4. CONCLUSION Un ensemble de concepts bien compris formalisés Un modèle unique, riche et standardisé etbien –––– intégration des BD actives intégration des BD objets Un formalisme qui s'étend plutôt bien – algèbre d'objets Un langage associé défini à plusieurs niveaux – SQL1, 2, Le Relationnel