Modèle Relationnel (de Codd) et Professeur Serge Miranda

Slides:



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

Les Systèmes de Gestion de Bases de Données (SGBD) df - normalisation.
Benoît Piranda Équipe SISAR Université de Marne La Vallée Bases de données Algèbre relationnelle, opérations Requêtes SQL.
Les Systèmes de Gestion de Bases de Données (SGBD) Algèbre relationnelle.
Les Systèmes de Gestion de Bases de Données (SGBD) L'algèbre relationnelle.
Rappels. Les Systèmes de Gestion de Bases de Données (SGBD) L'algèbre relationnelle.
Informatique appliquée à la gestion Bases de données www. labri
Matière/Sources: Daniel Bardou, Julie Dugdale &
1Deug 1 Systèmes d Information : 7a Michel de Rougemont Université Paris II Les tableurs : Excel.
Le Modèle Relationnel (Chapitre 4)
Fonctionnalités des SGBD
Le Modèle Logique de Données
Algèbre relationnelle
Optimisation algébrique de requêtes relationnelles
Planning 11 Séances 2 devoirs en TD Jeudi 25 mars Jeudi 13 mai.
1 Planning AmphiJeudi 15h 16h30 Notes de cours ! TD : 11 Séances 2 devoirs en TD Mercredi 24 mars Mercredi 12 mai.
Le modèle logique (Relationnel) de données
Optimisation de Requêtes
Bases de données orientées-objets
LE MODELE RELATIONNEL INVENTE PAR T. CODD (IBM SAN-JOSE)
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Manifeste de Chris Date sur modèle « Objet Relationnel » (pour données structurées/SQL) Professeur Serge Miranda Directeur Master.
Introduction à SQL3 (SQL99)
Contrôles d'accès aux données
Eléments d ’algèbre relationnelle
Rappel sur les bases de données et le vocabulaire
Introduction à SQL3 (SQL99)
Algèbre relationnelle
B.Shishedjiev - Modèle relationnel
Initiation aux bases de données et à la programmation événementielle
Finger Cryptosystem pour L’Authentification
LANGAGES LIES AU MODELE RELATIONNEL
Les bases de données Cours assuré par: Mlle Smii imen
Chap 4 Les bases de données et le modèle relationnel
Initiation aux bases de données
Bases de données et SGBD relationnels
3 Introduction au modèle relationnel 3.1 Concepts de base
L’utilisation des bases de données
Modèle Logique de Données
Algèbre relationnelle et SQL
MODELE RELATIONNEL concept mathématique de relation
Staf 2x Cours de bases de données
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
Algèbre Relationnelle
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
Cours de Base de Données & Langage SQL
Cours N°2 Base de Données & Langage SQL
Inventé par T. Codd (IBM Recherche)
Cours de Management des Systèmes d’Information
Initiation aux bases de données et à la programmation événementielle
Michel Tollenaere SQL et relationnel 1 Cours MSI-2A filière ICL version 1.1 du 2 novembre 2010 Cours de Management des Systèmes dInformation
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.
Copyright Serge Miranda
Découverte de correspondances entre ontologies distribuées
JOYEUX ANNIVERSAIRE MAITRESSE
Plan UE Introduction aux Bases de Données
Cours 4b: Introduction au SQL, le langage des SGBD Relationnels
Introduction.
SQL Partie 1.
Traduction des opérations sous MySQL
Présentation Session RPSI
Sélection de colonnes (la projection)
Le modèle relationnel Plan 1. Concepts descriptifs
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Systèmes de gestion de BD
Langage Relationnel Graphe de Requêtes
Introduction aux Bases de Données et au langage SQL
INTRODUCTION AUX BASES DE DONNEES Algèbre relationnelle
Le langage SQL LA Plan 1. Introduction Rappels sur le modèle relationnel Les caractéristiques du langage SQL 2. Le Langage d'Interrogation des.
Transcription de la présentation:

Modèle Relationnel (de Codd) et Professeur Serge Miranda Synthèse Modèle Relationnel (de Codd) et SQL2 Professeur Serge Miranda Directeur du Dess MBDS serge.miranda@unice.fr

Généralités SYNTEX au CERT-DERI (France) De 1970 à 1987 : un historique du relationnel et quelques produits 1970 Article de T. CODD présentant le modèle relationnel (revue ACM) SYNTEX au CERT-DERI (France) SYSTEM-R prototype IBM-San JOSE prouvant la faisabilité (d ’une partie) du modèle relationnelle 1972 1975 1976 1977 1979 1980 1981 INGRES prototype Univ. Calif BERKELEY ORACLE prototype en assembleur fils illégitime de System-R ORACLE V1 produit d ’ORACLE Corp. ORACLE V2 réécriture en C INGRES produit de RTI sur VAX Turing award pour Ted CODD SQL-DS DB2 1982 ORACLE V5 1984 INGRES-STAR 1985 Création « CODD and DATE Consulting Group » ORACLE ORACLE-STAR 1986 DB2 V1 CAMPUS (France) 1987 ORACLE V6 Codd and Date CAMPUS 1989-1990 DB2 V2 ORACLE V7 ….. Release 4 1994

Généralités Vue simple des données - tables Intérêt du modèle relationnel Vue simple des données - tables (pouvant être non naturelle) Langage de requête non procédural : SAT (dont l ’opération fondamentale est la JOINTURE)

Généralités (+ théorie formelle) STRUCTURES MODELE DE OPERATEURS MODELE DE DONNEES ? STRUCTURES MODELE DE DONNEES OPERATEURS REGLES D ’INTEGRITE (+ théorie formelle)

Modèle Relationnel de CODD (V1, 1970) Les 10 Concepts du modèle relationnel de CODD Structure s: C1 – RELATION / CLE PRIMAIRE (C3) C2 - DOmaine / Attribut C3 - Clé Primaire C4 - Clé Etrangère ou Domaine Primaire Intégrité du Modèle : C5 - Intégrité du Domaine (cf. C2) C6 - Intégrité d ’entité / relation (cf. C1 et C3) C7 - Intégrité de référence (cf. C4) Opérateurs : Equivalence avec l ’algèbre relationnelle C8 - Opérateurs ensemblistes Union Intersection Différence C9 - Opérateurs relationnels Sélection Projection Jointure Division C10 - Opérateurs sémantiques (« domain constrained »)

Modèle Relationnel de CODD Définition : ENSEMBLE ? G. Cantor : « Toute collection d ’objets bien DISTINCTS de notre perception ou de notre pensée » Paradoxes de B. Russel : Dans un village, le barbier rase toutes les personnes qui ne se rasent pas elles-mêmes ! Se rase t-il lui même ? Ensemble des membres d ’un conseil d ’administration qui n ’ayant pas d ’opinion à eux suivent l ’opinion du président ? Le président appartient-il à l ’ensemble ?

Modèle Relationnel de CODD : « RELATION » ? Définition ensembliste d ’une relation ? ENSEMBLE (de « N-uplets » « TUPLES ») : sous ensemble du produit cartésien de N ensembles Les avions sont des quadruplets de la forme (AVNO, AVNOM, CAP, LOC) « RELATION » : sous ensemble du PRODUIT CARTESIEN de N « DOMAINES » R  D1 x D2 x ……… x DN Exemple 1 : AVION  AVNO x AVNOM x CAP x LOC AVION = {(10, Airbus, 320, Nice), (11, B707, 300, Paris), ……………….}

Modèle Relationnel de CODD Exemple de tables de valeurs PL# PLNOM ADRESSE P i 1 JEAN PARIS l o 2 PIERRE NICE t e 3 PAUL PARIS AV# AVNOM CAP LOC A v 100 A300 300 NICE i 101 B707 250 PARIS o 102 A300 300 LYON n 103 B727 700 LYON HA VOL# PL# AV# VD VA HD V IT100 1 100 NICE PARIS 7 8 o IT101 2 100 PARIS NICE 11 12 l IT102 1 103 LYON PARIS 14 15 IT103 1 102 NICE LYON 17 18

Modèle Relationnel de CODD : RELATION ? Définition prédicative d ’une relation ? PREDICAT « L ’avion de numéro AV# est de type AVNOM, de capacité CAP et est localisé à LOC » RELATION prédicat écrit sous forme concise AVION (AV#, AVNOM, CAP, LOC) PROPOSITION « L ’avion de numéro 10 est de type AIRBUS, de capacité 320 places et est localisé à NICE » TUPLE : proposition VRAIE écrite sous forme concise AVION (10, AIRBUS, 320, NICE)

Modèle Relationnel de CODD : « ATTRIBUT vs DOMAINE » PROBLEME Le même domaine peut être utilisé plusieurs fois dans la définition d ’une même relation ! Exemple 2 : VOL  VOLNO x VILLE x VILLE x HEURE x HEURE ATTRIBUT : ROLE joué par un domaine dans une relation DOMAINE VOL ( VOL# V-D V-A H-D H-A ) ATTRIBUTS

L ’ATTRIBUT REPRESENTE LE ROLE JOUE PAR UN DOMAINE DANS Modèle Relationnel de CODD Attribut  Domaine : PINo : Pinom : Ville Pilote PL# PLNOM ADRESSE 1 JEAN PARIS 2 PIERRE NICE 3 PAUL PARIS : AvNo : AvNom : Capacité : Ville Avion AV# AVNOM CAP LOC 100 A300 300 NICE 101 B707 250 PARIS 102 A300 300 LYON 103 B727 700 LYON : VoINo : PINo : AvNo : Ville : Ville : Heure : Heure VOL# PL# AV# VD VA HD HA VOL IT100 1 100 NICE PARIS 7 8 IT101 2 100 PARIS NICE 11 12 IT102 1 103 LYON PARIS 14 15 IT103 1 102 NICE LYON 17 18 L ’ATTRIBUT REPRESENTE LE ROLE JOUE PAR UN DOMAINE DANS UNE RELATION

Modèle Relationnel de CODD Noms des PILOTES Noms des AVIONS

Modèle Relationnel de CODD X(12) TYPE SYNTAXIQUE (pas de « domaine »)

Modèle Relationnel de CODD PILNOM AVNOM X(12) DOMAINE (sémantique) - Définition (semantical data type ») - Manipulation (« domain constrained »)

Modèle Relationnel de CODD Exemple de « schéma relationnel » 1) DOMAINES NUMERO NUMERIC (6) Primaire AVNO NUMERIC (6) Primaire PILNO NUMERIC (6) Primaire NOMAV CHARACTER (20) NOMPIL CHARACTER (6) CAPACITE NUMERIC (3) VILLE CHARACTER (10) HEURE NUMERIC (4) 2) RELATIONS RELATION : AVION (AV#, AVNOM, CAP, LOC) AV# = Clé Primaire ATTRIBUT : AV# (Défini) sur AVNO AVNOM - sur NOMAV CAP - sur CAPACITE LOC - sur VILLE RELATION : PILOTE(PL#, PLNOM, ADRE) PL# = Clé Primaire ATTRIBUT : PL# (Défini) sur PILNO PLNOM - sur NOMPL ADR - sur VILLE RELATION : VOL(VOL#, PL#, AV#, VD, VA, HD, HA) VOL# = Clé Primaire ATTRIBUT : VOL# (Défini) sur NUMERO PL# - sur PILNO AV - sur AVNO VD - sur VILLE VA - sur VILLE HD - sur HEURE HA - sur HEURE CONTRAINTES (1) …

Modèle Relationnel de CODD LANGAGE ALGEBRIQUE LANGAGE « FERME » ARGUMENT (S) RELATION (S) OPERATEUR ALGEBRIQUE RESULTAT : RELATION REQUETE (Ensemble d ’opérateurs algébriques)

OPERATEURS DU LANGAGE ALGEBRIQUE Modèle Relationnel de CODD OPERATEURS DU LANGAGE ALGEBRIQUE Opérateurs du langage algébrique Ensemblistes UNION INTERSECTION DIFFERENCE (PRODUIT CARTESIEN) Extension (binaire) Restriction (unaire) PROJECTION (découpage vertical) SELECTION (découpage horizontal) JOIN () DIVISION ()

Modèle Relationnel de CODD LANGAGE ALGEBRIQUE JOINTURE R1(A = A) R2 R1 A B C R2 A D () JOIN R3 A B C A D

Modèle Relationnel de CODD LANGAGE ALGEBRIQUE DIVISION : R1 / R2 Dividende Diviseur R1 A B R2 B DIVISION B () Division ? « Complémentaire du diviseur dans le dividende tel que le produit cartésien avec le diviseur soit inclus dans le dividende » R3 A

Modèle Relationnel de CODD LANGAGE ALGEBRIQUE DIVISION Requêtes faisant intervenir un quantificateur universel, dans une expression de la forme « TOUS LES ». Exemple : « Quels sont les numéros des pilotes qui conduisent TOUS LES avions de type A300 qui sont en service ? » AV# AVNOM CAP LOC A v 100 A300 300 NICE i 101 B707 250 PARIS o 102 A300 300 LYON n 103 B727 700 LYON VOL# PL# AV# VD VA HD HA V IT100 1 100 NICE PARIS 7 8 o IT101 2 100 PARIS NICE 11 12 l IT102 1 103 LYON PARIS 14 15 IT103 1 102 NICE LYON 17 18 RESULTAT : PL# R 1

Modèle Relationnel de CODD LANGAGE ALGEBRIQUE DIVISION DIVIDENDE BINAIRE R1 = ( A , B ) Résultat Idem diviseur (même domaine) VOL1 = PROJECT VOL ( PL# , AV# ) DIVISEUR UNAIRE ( « tous les » ) « tous les avions de type A300 » A1 = SELECT AVION (AVNOM =   " A300  ") A2 = PROJECT A1 (Av#) • RESULTAT = VOL1 (PL# , AV#) A2 (AV#) •