BASES DE DONNÉES RELATIONNELLES Introduction. Christine Bonnet sources : divers et



Documents pareils
Le Langage SQL version Oracle

Initiation à SQL. Le langage de communication avec une base de données relationnelles. Application avec PostgreSQL. Nathalie Camelin 2011/2012

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

CHAPITRE 1 ARCHITECTURE

Les bases de données

TP Contraintes - Triggers

SQL Historique

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de données relationnelles

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Bases de données et sites WEB Licence d informatique LI345

Information utiles. webpage : Google+ : digiusto/

Bases de Données Avancées

Cours Base de données relationnelles. M. Boughanem, IUP STRI

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Bases de données et sites WEB

Introduction au Système de Gestion de Base de Données et aux Base de Données

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

Présentation du module Base de données spatio-temporelles

Bases de Données. Plan

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Optimisation SQL. Quelques règles de bases

Les bases de données Page 1 / 8

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

CESI Bases de données

Bases de données Cours 1 : Généralités sur les bases de données

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Bases de Données Relationnelles. Le Modèle Relationnel

Bases de données - Modèle relationnel

A QUOI SERVENT LES BASES DE DONNÉES?

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

Introduction aux bases de données Cours 1 : Généralités sur les bases de données

Auto-évaluation Oracle: cours de base

Support de cours «SGBD»

Modélisation de bases de données : Le modèle relationnel

Le langage SQL (première partie) c Olivier Caron

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

CHAPITRE 1. Introduction aux bases de données

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Introduction aux Bases de Données

//////////////////////////////////////////////////////////////////// Administration bases de données

Bienvenue dans le monde SQL

CREATION WEB DYNAMIQUE

INSTALLATION DE L APPLICATION DU CONTEXTE ITASTE

Introduction à MySQL (ou MySQL en 3 heures montre en main)

OpenPaaS Le réseau social d'entreprise

Bases de données relationnelles : Introduction

Dossier I Découverte de Base d Open Office

Bases de données cours 1

A QUOI SERVENT LES BASES DE DONNÉES?

Du 10 Fév. au 14 Mars 2014

Bases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel Toulouse Cedex 7

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES


Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

Administration des bases de données. Jean-Yves Antoine

Cours Bases de données

Cours SGBD 1. Concepts et langages des Bases de Données Relationnelles

Introduction aux bases de données. Généralités sur les bases de données. Fonctions d'un SGBD. Définitions. Indépendance par rapport aux traitements

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Patrice BOURSIER. Professeur, Univ. de La Rochelle. Bases de Données. Notes de cours

CATALOGUE FORMATIONS DOMAINE Bases de données

Le Langage De Description De Données(LDD)

M2106 : Programmation et administration des bases de données

INTRODUCTION AUX BASES de DONNEES

TP Programmation Java / JDBC / Oracle

Devoir Data WareHouse

INSIA Bases de données ORACLE Installation SQL*Plus SQL-Developer

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Master I Génie Logiciel

Module BDR Master d Informatique (SAR)

Introduction aux bases de données

Gestion des bases de données

PostgreSQL. Formations. Calendrier... 14

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

1 Introduction et installation

Bases de données avancées Introduction

PostgreSQL. Formations. SQL avancé Calendrier... 18

I4 : Bases de Données

Bases de SQL. Hacks 1-6 CHAPITRE UN

Formation à l utilisation des Systèmes de Gestion de Bases de Données Relationnelles. organisée avec la collaboration du

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Fascicule des Travaux Pratiques Oracle

Systèmes d information et bases de données (niveau 1)

I. MySQL : Serveur et SGBD

Bases de données avancées

Cours Bases de données 2ème année IUT

Licence Professionnelle Commerce Electronique. MySQL. Michel DUBOIS Michel Dubois : Support de cours SGBD N 1

CATALOGUE FORMATION 2014

Bases de Données Avancées PL/SQL

PHP 4 PARTIE : BASE DE DONNEES

CHAPITRE 4 POLITIQUES DE CONTRÔLES DES ACCÈS SOUS ORACLE ADMINISTRATION ET TUNING DE BASES DE DONNÉES 10/05/2015 RESPONSABLE DR K.

Transcription:

I BASES DE DONNÉES RELATIONNELLES Introduction Christine Bonnet sources : divers et

Cycle de vie du développement d un système Stratégie et Analyse Conception Prototypage Documentation Transition Production I-2 Christine Bonnet sources : divers et

HISTORIQUE PREMIÈRES GÉNÉRATIONS DE SGBD 1 ère GÉNÉRATION : Conception - 1960 Niveau Opérationnel - 1970 SGBD Hiérarchique et Réseau (CODASYL) Exemples : IMS, IDSII, IDMS, etc. 2 ème GÉNÉRATION : Conception - 1970 Niveau Opérationnel - 1980 SGBD Relationnel (Concept Mathématique de Relations) Exemples : ORACLE, SYBASE, ACCESS, INGRES, INFORMIX, etc. SGBD conçus au départ pour des applications classiques de gestion. I-3 Christine Bonnet sources : divers et

BASES DE DONNÉES AVANCÉES : TROISIÈME GÉNÉRATION 3 ème GÉNÉRATION : Conception : 1980 Niveau opérationnel : 1990 2000 OBJECTIFS : Lever les limites des SGBDR Augmenter la puissance de calcul des LMD Augmenter la richesse sémantique des modèles de BD APPROCHES IMPORTANTES : Les BD Relationnelles Objets (ORACLE V.8i) Les BD déductives I-4 Christine Bonnet sources : divers et

Concept de Base de Données Relationnelles Dr. E. F. Codd proposa le modèle relationnel en 1970. Base pour un Système de Gestion de Bases de Données Relationnelles (SGBDR). Le modèle relationnel consiste en: Collection d objets ou de relations Ensemble d opérateurs pour agir sur les relations L intégrité des données pour l exactitude et la cohérence I-5 Christine Bonnet sources : divers et

BASES DE DONNÉES RELATIONNELLES : RAPPELS CARACTÉRISTIQUES Stockage et gestion de gros volumes de données Bases de données Gros volumes de données Données persistantes partagées Technologies : recherche efficace mises à jour fiables Requêtes Efficacité de l accès Contraintes Accès à des données - persistantes, - partagées, - résistantes aux pannes, - pouvant être accédées et mises à jour de façon concurrente par d autres applications. Exprimées dans le langage de définition de données. Langage de définition et de manipulation de données orienté utilisateurs : SQL. I-6 Christine Bonnet sources : divers et

Définition d une Base de Données Relationnelle Une BD relationnelle est une collection de relations ou de tables bi-dimensionnelles BD Nom de table : EMP EMPNO ENAME JOB DEPTNO 7839 KING PRESIDENT 10 10 7698 BLAKE MANAGER 30 30 7782 CLARK MANAGER 10 10 7566 JONES MANAGER 20 20 Nom de table : DEPT DEPTNO DNAME LOC 10 10 ACCOUNTING NEW YORK 20 20 RESEARCH DALLAS 30 30 SALES CHICAGO 40 40 OPERATIONS BOSTON I-7 Christine Bonnet sources : divers et

Stockage des données sur différents médias SALGRADE GRADE LOSAL HISAL --------- --------- --------- DEPT 1 700 1200 DEPTNO DNAME LOC 2 1201 1400 --------- -------------- ---------- 3 1401 2000 10 10 ACCOUNTING NEW YORK 4 2001 3000 20 20 RESEARCH DALLAS 5 3001 9999 30 30 SALES CHICAGO 40 40 OPERATIONS BOSTON Feuille de calcul électronique Classeur Base de données I-8 Christine Bonnet sources : divers et

STRUCTURE RELATIONNELLE CONCEPTS DE BASE DU MODÈLE RELATIONNEL Domaine : ensemble de valeurs. Exemples : Domaine produits = {aspirine, alcool, vitamine, } Domaine D1 = ensemble des entiers. Attribut : variable prenant ses valeurs dans un domaine. Exemple : l'attribut "n représentant" prend ses valeurs dans D1. Relation : une relation R sur un ensemble d'attributs U={A1, A2,, An} de domaines respectifs D1, D2,, Dn est un sous-ensemble du produit cartésien D1 D2... Dn. Exemple : commande(n commande, date commande, date livraison, n client). I-9 Christine Bonnet sources : divers et

STRUCTURE RELATIONNELLE Terminologie : Chaque ligne d'une relation (table) est appelée n-uplet ou tuple. L'ordre d'une relation est le nombre d'attributs (de colonnes) de la relation. La cardinalité d'une relation est le nombre de tuples de la relation. I-10 Christine Bonnet sources : divers et

Terminologie des BD relationnelles 2 3 4 1 EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 6 ------------- ------------ --------------------- -------- ---------------- ----------- -------------- ----------- 7839 KING PRESIDENT 17-NOV-81 5000 10 7698 BLAKE MANAGER 7839 01-MAY-81 2850 30 7782 CLARK MANAGER 7839 09-JUN-81 2450 10 7566 JONES MANAGER 7839 02-APR-81 2975 20 7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30 7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30 7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30 7900 JAMES CLERK 7698 03-DEC-81 950 30 7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30 7902 FORD ANALYST 7566 03-DEC-81 3000 20 7369 SMITH CLERK 7902 17-DEC-80 800 20 7788 SCOTT ANALYST 7566 09-DEC-82 3000 20 7876 ADAMS CLERK 7788 12-JAN-83 1100 20 7934 MILLER CLERK 7782 23-JAN-82 1300 10 5 I-11 Christine Bonnet sources : divers et

STRUCTURE RELATIONNELLE Dépendance Fonctionnelle (DF) : exprime une contrainte. Soit X et Y deux sous-ensembles d'attributs de l'ensemble des attributs d'une relation R, il existe une dépendance fonctionnelle de X vers Y, notée X Y, si pour une valeur donnée à chaque attribut de X, il correspond au plus une valeur pour chaque attribut de Y. lorsque 2 n-uplets ont les mêmes valeurs pour les attributs de X, ils ont les mêmes valeurs sur les attributs de Y. Exemple : n commande date commande, date livraison, n client. I-12 Christine Bonnet sources : divers et

STRUCTURE RELATIONNELLE Type de dépendance fonctionnelle : quelconque. élémentaire : U : ensemble d'attributs X, Y U, X Y est élémentaire X' X tel que X' Y Exemple : n commande, n produit n client, n'est pas élémentaire. directe : X, Y U, X Y est directe Z U tel que X Z et Z Y. Exemple : n commande n client n client nom client n commande nom client, n'est pas directe. I-13 Christine Bonnet sources : divers et

STRUCTURE RELATIONNELLE Clé candidate, clé primaire, clé étrangère : Une clé candidate est un sous-ensemble minimal d'attributs tel qu'il existe une dépendance fonctionnelle de ce sous-ensemble vers tout autre attribut de la relation. Une clé primaire est une des clés candidate (exemple : n commande). Une clé étrangère est un ensemble d'attributs, clé primaire d'une autre relation (exemple : n client dans la table commande). Contraintes : D'unicité de la clé : il ne peut exister deux n-uplets ayant la même valeur pour une occurrence de relation. D'intégrité référentielle : toute valeur d'une clé étrangère dans une relation doit exister dans une autre relation comme valeur de clé primaire (exemple : toute valeur de n client dans la table commande doit exister dans la table client). D'entité : tout attribut participant à une clé primaire ne doit pas avoir de valeur nulle. I-14 Christine Bonnet sources : divers et

STRUCTURE RELATIONNELLE Forme normale d'une relation : 1FN : tous les attributs sont simples et la relation possède une clé primaire. 2FN : 1FN et tous les attributs non clé sont en DF élémentaire avec la clé. 3FN : 2FN et tous les attributs non clé sont en DF directe avec la clé. I-15 Christine Bonnet sources : divers et

Modèles de données Modèle du système dans l esprit du client Modèle EA du modèle du client Modèle de tables du modèle EA Serveur Tables sur disques I-16 Christine Bonnet sources : divers et

Modèle EA Création d un diagramme EA correspondant aux spécifications EMPLOYEE #* number * name o job title assigned to DEPARTMENT #* number * name o location Scénario... Attribuer un ou plusieurs employés à un département...... Quelques départements n ont pas encore d employé... I-17 Christine Bonnet sources : divers et

Lier plusieurs tables Chaque ligne dans une table est identifiée de façon unique par une clé primaire. Vous pouvez lier logiquement des données de plusieurs tables en utilisant les clés étrangères Nom de la table : EMP Nom de la table : DEPT EMPNO ENAME JOB DEPTNO 7839 KING PRESIDENT 10 7698 BLAKE MANAGER 30 7782 CLARK MANAGER 10 7566 JONES MANAGER 20 DEPTNO DNAME LOC 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON Clé primaire Clé étrangèrere Clé primaire I-18 Christine Bonnet sources : divers et

Communiquer avec un SGBDR en utilisant SQL Un ordre SQL est entré SQL> SQL> SELECT SELECT loc loc 2 2 FROM FROM dept; dept; L ordre est envoyé à la BD BD Les données sont affichées LOC LOC ------------- ------------- NEW NEW YORK YORK DALLAS DALLAS CHICAGO CHICAGO BOSTON BOSTON I-19 Christine Bonnet sources : divers et

SGBDR Serveur Tables utilisateur Dictionnaire des données I-20 Christine Bonnet sources : divers et

Solution Oracle Complète Applications Oracle Developer Finance Fabrication...... Oracle Designer Discoverer SQL PL/SQL SQL* Plus Oracle 8/9/10 Database Dictionnaire des données Tables de données I-21 Christine Bonnet sources : divers et

ORDRES SQL SELECT INSERT UPDATE DELETE CREATE ALTER DROP RENAME TRUNCATE COMMIT ROLLBACK SAVEPOINT GRANT REVOKE Recherche de données Langage de manipulation de données (DML) Langage de définition d de Données (DDL) Contrôle des transactions Langage de contrôle des données (DCL) I-22 Christine Bonnet sources : divers et

Tables Utilisées dans le Cours EMP EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO --------- ---------- --------- --------- --------- --------- --------- --------- 7839 KING PRESIDENT 17-NOV-81 5000 10 10 7698 BLAKE MANAGER 7839 01-MAY-81 2850 30 30 7782 CLARK MANAGER 7839 09-JUN-81 2450 10 10 7566 JONES MANAGER 7839 02-APR-81 2975 20 20 7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30 30 7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30 30 7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30 30 7900 JAMES CLERK 7698 03-DEC-81 950 30 30 DEPTNO 7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30 DNAME LOC 30 --------- 7902 FORD ANALYST 7566 03-DEC-81 3000 20 -------------- ---------- SALGRADE 20 10 7369 SMITH CLERK 7902 17-DEC-80 800 20 10 ACCOUNTING NEW YORK GRADE LOSAL HISAL 20 20 7788 SCOTT ANALYST 7566 09-DEC-82 3000 20 20 RESEARCH DALLAS --------- --------- --------- 20 30 7876 ADAMS CLERK 7788 12-JAN-83 1100 30 SALES CHICAGO 1 700 1200 40 7934 MILLER CLERK 7782 23-JAN-82 1300 10 40 OPERATIONS BOSTON 2 1201 1400 10 3 1401 2000 4 2001 3000 5 3001 9999 DEPT I-23 Christine Bonnet sources : divers et

Interaction entre SQL and SQL*Plus SQL Statements Buffer SQL Statements SQL*Plus Server SQL*Plus Commands Formatted Report Query Results I-24 Christine Bonnet sources : divers et

Ordres SQL / Commandes SQL*Plus SQL Un langage Standard ANSI Mots clés s : pas d abréviation Les ordres manipulent des définitions d de données et de tables de la base de données SQL*Plus Un environnement Propriété d Oracle Abréviation possible des mots clés Les commandes ne permettent pas la manipulation des valeurs de la base de données. SQL statements SQL buffer SQL*Plus commands SQL*Plus buffer I-25 Christine Bonnet sources : divers et

Aperçu de SQL*Plus Ouvrir une session SQL*Plus. Décrire la structure de la table. Éditer vos ordres SQL. Exécuter SQL à partir de SQL*Plus. Sauvegarder des ordres SQL dans des fichiers et ajouter des ordres SQL aux fichiers. Exécuter des fichiers sauvegardés. Charger des commandes à partir d un fichier vers un buffer pour les éditer. I-26 Christine Bonnet sources : divers et

Se connecter à SQL*Plus A partir de l environnement l Windows : INVITE ANTOINEBERMON INVITE ANTOINEBERMON Lyon Lyon A partir d une d ligne de commande: connect [username[/password [@database database]]] I-27 Christine Bonnet sources : divers et

Afficher la structure des tables Commande SQL*Plus : DESCRIBE DESC[RIBE] tablename I-28 Christine Bonnet sources : divers et

Afficher la structure des tables SQL> DESCRIBE dept Name Null? Type ----------------- -------- ------------ DEPTNO NOT NULL NUMBER(2) DNAME VARCHAR2(14) LOC VARCHAR2(13) I-29 Christine Bonnet sources : divers et

Commandes d édition de SQL*Plus A[PPEND] text C[HANGE] / old / new C[HANGE] / text / CL[EAR] BUFF[ER] DEL DEL n DEL m n I-30 Christine Bonnet sources : divers et

Commandes d édition de SQL*Plus I[NPUT] I[NPUT] text L[IST] L[IST] n L[IST] m n R[UN] n n text 0 text I-31 Christine Bonnet sources : divers et

Commandes de fichiers de SQL*Plus SAVE filename GET filename START filename @ filename EDIT filename SPOOL filename I-32 Christine Bonnet sources : divers et

EXEMPLE SQL> ed exo1 -- sauvegarde sur le compte personnel -- tests SQL> sta exo1 -- modification de exo1 SQL> ed -- ou Fichier-Ouvrir -- impression des résultats r dans un fichier SQL> spo exo1imp -- exécution de exo1 SQL> spo off I-33 Christine Bonnet sources : divers et