Bases de données et Systèmes transactionnels
|
|
- Paul Goudreau
- il y a 8 ans
- Total affichages :
Transcription
1 Bases de données et Systèmes transactionnels Dominique Laurent Tao-Yan Jen
2 Plan du cours Introduction Modèle Entité/Association Langage SQL - ORACLE Architectures des SGBD relationnels Notion de transaction et problématique de la concurrence d'accès Contrôle
3 Bibliographie Georges Gardarin : Bases de données (Eyrolles 2003) Claude Delobel, Michel Adiba : Bases de données et systèmes relationnels (Dunod 1982) Garcia-Molina Hector, Jeff Ulmann, Jenifer Widom : Database Systems:The complete book (Prentice Hall 2008) Dominique Laurent : Relational Databases Wiley Encyclopedia of Electrical and Electronics Engineering (2004) RELATIONAL%20DATABASES.pdf
4 Introduction Pourquoi les bases de données? Stocker l'information de manière persistante Permettre un accès aux données Facile : ne pas écrire de programmes compliqués Efficace : réponses aux requêtes rapides Sûr : persistance des données et confidentialité des données Multi-utilisateurs : gérer les accès concurrents aux données
5 Bref historique Constat : les systèmes de gestion de fichiers ne sont pas capables de répondre aux besoins Manque de visibilité globale des données Interrogation difficile Gestion de la confidentialité et de la concurrence d'accès insuffisante Années 60 : Méthodes de conception ou d'analyse Premiers logiciels Systèmes de Gestion de Bases de Données (SGBD ou DBMS)
6 Bref historique Premiers modèles de SGBD Hiérarchique : données organisées sous forme arborescente (DL1, IBM) Réseau : données organisées sous forme de graphes (TOTAL, IBM) Avantages / Inconvénients PLUS : Vision globale des données, efficacité, persistance MOINS : interrogation difficile, confidentialité et concurrence d'accès insuffisantes
7 Bref historique Modèle relationnel (Edgard Frank Codd, 1970) Basé sur la notion mathématique de relation Permet une étude théorique Avantages / Inconvénients PLUS : Vision globale des données, facilité d'interrogation, possibilité d'optimisation, meilleure confidentialité MOINS : implémentation difficile (les premiers SGBD relationnels datent des années 80, ce problème est maintenant résolu : ORACLE, MySQL, DB2, SQL Server,...)
8 Modèle Entité/Association Problème Etant donné une application décrite en langue naturelle par les futurs utilisateurs, comment déduire l'organisation des données? Procéder en deux étapes: Organisation logique (indépendamment de tout système ou langage informatique) Organisation physique (en termes du type de logiciel utilisé)
9 Modèle Entité/Association Modélise les données en utilisant deux concepts Les entités : une entité se réfère à un ensemble d' «objets» ayant les mêmes caractéristiques Les associations (ou relations) : expriment des liens entre les entités
10 Exemple Modéliser les données concernant les inscriptions des étudiants aux cours auxquels ils doivent assister et les enseignants assurant ces cours Trois entités : cours, étudiant, prof Deux liens décrivant Les inscriptions des étudiants Les enseignements assurés par les enseignants
11 Exemple (entités) Chaque entité a donc trois attributs : Entité étudiant : num_et, nom_et, adr_et Entité prof : num_p, nom_p, adr_p Entité cours : num_c, nom_c, niveau Les attributs soulignés sont les clés : Chaque étudiant individuel est reconnu par trois valeurs Deux étudiants distincts ne peuvent avoir le même numéro
12 Représentation des entités etudiant Num_et Nom_et Adr_et Nom de l entité Liste des attributs etudiant Dupont Cergy Un étudiant particulier caractérisé par ses valeurs sur les attributs
13 Exemples (liens) Lien etudiant-cours : plusieurs-plusieurs Un étudiant peut être inscrit à plusieurs cours Un cours a plusieurs étudiants Lien cours-prof : un-plusieurs Si un cours donné ne peut être assuré par deux enseignants distincts lien un-plusieurs (car un enseignant assure plusieurs cours) Lien un-un : modélise l'héritage
14 Représentation des liens etudiant prof Num_et Nom_et Adr_et Num_p Nom_p Adr_p m cours n inscrit n Num_c Nom_c Niveau 1 enseigne
15 Au niveau des données etudiant Dupont Cergy etudiant Durand Pontoise prof Durand Paris inscrit cours enseigne inscrit inscrit info DESS cours math DEUG enseigne
16 Lien un-un (is_a) Notion d'étudiant salarié pour lesquels on ajoute les attributs : salaire et horaires On crée une nouvelle entité etudiant-salarie ayant les trois attributs num_sal, salaire et horaire Un étudiant salarié hérite des attributs de l'entité étudiant possède en plus les trois attributs de l'entité etudiant-salarie
17 Représentation des liens is_a etudiant etudiantsalarie prof Num_et Nom_et Adr_et Is-a num_sal salaire horaire Num_p Nom_p Adr_p m cours n inscrit n Num_c Nom_c Niveau 1 enseigne
18 Au niveau des données etudiant Dupont Cergy etudiant Durand Pontoise Is-a etudiantsalarie h-23h prof Durand Paris inscrit cours enseigne inscrit inscrit info DESS cours math DEUG enseigne
19 Modèle relationnel Les seuls objets sont les relations ou tables Une table est définie par Un nom Un schéma (liste d'attributs) Des n-uplets (données) Exemple : les étudiants sont représentés par Nom de la table : etudiant Attributs : [num_et, nom_et, adr_et] N-uplets : (123456, Dupont, Cergy), (134567, Durand, Pontoise),...
20 Représentation d'une table etudiant nom Num_et Nom_et Adr_et schéma Dupond Durand Cergy Pontoise n-uplets
21 Théorie du modèle relationnel Etude théorique des opérations permettant de manipuler les tables Niveau logique (pouvoir d'expression) Niveau algébrique (efficacité) Niveau pratique : le standard est SQL (Structured Query Language) Etude théorique de la conception du schéma d'une base (non abordé dans le cours)
22 Du modèle E/A aux tables Règles générales Toute entité donne lieu à une table ayant le même nom et les mêmes attributs Tout lien entre les entitités E1 et E2 est traduit par une table de même nom et dont les attributs sont Les attributs (éventuels) du lien Les clés des entités E1 et E2
23 Exemple Le schéma E/A se traduit par les tables etudiant[num_et, nom_et, adr_et] prof[num_p, nom_p, adr_p] cours[num_c, nom_c, niveau] inscrit[num_et, num_c] enseigne[num_c, num_p] Remarque : la table enseigne n'est pas nécessaire cours[num_c, nom_c, niveau, num_p]
24 Manipulation de tables : Algèbre relationnelle Opérations ensemblistes : union, intersection, différence Opérations relationnelles : Projection permet de restreindre les colonnes Sélection permet de restreindre les lignes Jointure permet de combiner deux tables Renommage permet de changer le nom d'un attribut
25 Exemples Noms et adresses des étudiants qui habitent Cergy Sélectionner sur l'adresse Projeter sur les attributs nom_et et adr_et Noms des enseignants qui enseignent les cours de bases de données Sélectionner dans la table cours tous les n-uplets tels que nom_c = 'bases de données' Joindre le résultat avec la table prof Projeter sur l'attribut nom_p
26 Langage SQL Conçu sur la base des opérations de l'algèbre relationnelle Offre des fonctionnalités supplémentaires Devenu le langage de définition des données et d'interrogation dans tous les SGBD relationnels Fait l'objet de standardisations SQL1 86 version minimale SQL1 89 addendum (intégrité) SQL2 (92) langage complet
27 SQL1 86 Langage de définition des données CREATE TABLE CREATE VIEW Langage de manipulation des données SELECT INSERT UPDATE DELETE Langage de contrôle des données GRANT et REVOKE BEGIN et END TRANSACTION COMMIT et ROLLBACK
28 Manipulation des données : requêtes Projection, sélection, jointure : SELECT [DISTINCT] <attributs de projection> FROM <relations à joindre> [WHERE <condition de sélection> [AND < conditions de jointure>]] DISTINCT élimine les répétitions La condition de jointure spécifie comment les tables sont jointes (sans condition, on effectue un produit cartésien)
29 Exemples de projection-sélection Noms et adresses de tous les étudiants SELECT nom_et, adr_et FROM etudiant Noms et adresses des étudiants qui habitent Cergy SELECT nom_et, adr_et FROM etudiant WHERE adr_et = 'Cergy'
30 Exemple de projection-sélection-jointure Noms des enseignants qui enseignent les cours de bases de données cours[num_c, nom_c, niveau, num_p] prof[num_p, nom_p, adr_p] La jointure doit être effectuée sur l'attribut num_p SELECT DISTINCT nom_p FROM cours, prof WHERE nom_c = 'bases de données' AND cours.num_p = prof.num_p
31 Exemple de projection-sélection-jointure Noms des enseignants qui enseignent les cours de bases de données Autre écriture en imbriquant deux SELECT SELECT DISTINCT nom_p FROM prof WHERE num_p IN (SELECT num_p FROM cours WHERE nom_c = 'bases de données')
32 Opérations ensemblistes Renvoie l'union/intersection/différence des résultats de deux requêtes Syntaxe (SELECT... FROM... WHERE...) UNION / INTERSECT / MINUS (SELECT... FROM... WHERE...) Les deux SELECT doivent porter sur les mêmes attributs
33 Exemple : Union Numéros des étudiants inscrits au cours 10 ou au cours 20 (SELECT num_et FROM inscrit WHERE num_c = 10) UNION (SELECT num_et FROM inscrit WHERE num_c = 20)
34 Exemple : Union Numéros des étudiants inscrits au cours 10 ou au cours 20 SELECT DISTINCT num_et FROM inscrit WHERE num_c = 10 OR num_c = 20 SELECT DISTINCT num_et FROM inscrit WHERE num_c IN (10, 20)
35 Exemple : Intersection Numéros des étudiants inscrits au cours 10 et au cours 20 (SELECT DISTINCT num_et FROM inscrit WHERE num_c = 10) INTERSECT (SELECT DISTINCT num_et FROM inscrit WHERE num_c = 20)
36 Exemple : Intersection Numéros des étudiants inscrits au cours 10 et au cours 20 : NE PAS ECRIRE SELECT DISTINCT num_et FROM inscrit WHERE num_c = 10 AND num_c = 20 La réponse à cette requête est VIDE Car aucun n-uplet ne peut avoir deux valeurs sur le même attribut!
37 Exemple : Différence Numéros des étudiants non inscrits au cours 10 (SELECT num_et on peut remplacer FROM inscrit) MINUS (SELECT num_et FROM inscrit WHERE num_c = 10) inscrit par etudiant
38 Exemple : Différence Numéros des étudiants non inscrits au cours 10 NE PAS ECRIRE SELECT num_et FROM inscrit WHERE num_c <> 10 Le résultat est les numéros des étudiants inscrits à un cours autre que le cours 10
39 Exemple : Différence Numéros des étudiants non inscrits au cours 10 SELECT num_et FROM etudiant WHERE num_et NOT IN (SELECT num_et FROM inscrit WHERE num_c = 10)
40 Pourquoi le renommage? Pouvoir considérer deux versions de la même table Exemple : numéros des étudiants inscrits à au moins deux cours distincts La méthode est : Joindre la table inscrit avec elle-même selon l'attribut num_et Sélectionner dans la jointure les n-uplets où le numéro d'étudiant est associé à deux cours distincts Projeter sur l'attribut num_et
41 Renommage en SQL : exemple Numéros des étudiants inscrits à au moins deux cours distincts SELECT DISTINCT i.num_et FROM inscrit, inscrit i WHERE inscrit.num_et = i.num_et AND inscrit.num_et <> i.num_et inscrit : version d'origine, i : 'copie' de inscrit inscrit.num_et = i.num_et : condition de jointure inscrit.num_et <> i.num_et : condition de sélection
42 Autres prédicats de sélection LIKE : chaînes de caractères (avec % ou _) BETWEEN : spécifie un intervalle de valeurs IN : teste l 'appartenance à un ensemble ou un intervalle EXISTS : teste si l'argument est vide ou non ANY : est vrai si au moins une comparaison avec les éléments de l'argument est vraie ALL : est vrai si toutes les comparaisons avec les éléments de l'argument sont vraies
43 Exemples Noms des cours commençant par 'Bases', de numéros entre 10 et 50, auxquels au moins un étudiant est inscrit SELECT nom_c FROM cours WHERE nom_c LIKE 'Bases%' AND EXISTS (SELECT * FROM inscrit WHERE num_c BETWEEN 10 AND 50 AND num_c = cours.num_c)
44 Exemples Nouvelle table resultat[num_et, num_c, note] Numéros des étudiants ayant la meilleure note au cours de numéro 10 SELECT num_c FROM resultat WHERE note >= ALL (SELECT note FROM resultat WHERE num_c = 10)
45 Exemples Nouvelle table resultat[num_et, num_c, note] Numéros des étudiants ayant une note supérieure à une des notes de l'étudiant numéro 100 SELECT num_c FROM resultat WHERE note >= ANY (SELECT note FROM resultat WHERE num_et = 100)
46 Fonctions en SQL Sur les chaînes de caractères (dépendent du logiciel) Sur les dates (dépendent du logiciel) Sur les nombres Opérations +, -, / Somme (SUM), minimum (MIN), maximum (MAX), moyenne (AVG) Comptage (COUNT)
47 Exemples Avec resultat[num_et, num_c, note] Afficher la table resultat en mettant les notes sur 10 (au lieu de sur 20) SELECT num_et, num_c, note/2 FROM resultat
48 Exemples Avec resultat[num_et, num_c, note] Meilleure note, note minimale et note moyenne du cours de numéro 10 SELECT MAX(note), MIN(note), AVG(note) FROM resultat WHERE num_c = 10
49 Exemples Avec resultat[num_et, num_c, note] Numéros des étudiants ayant la meilleure note au cours de numéro 10 SELECT num_c FROM resultat WHERE note = (SELECT MAX(note) FROM resultat WHERE num_c = 10)
50 Exemples Avec inscrit[num_et, num_c] Nombre d'étudiants inscrits au cours 10 SELECT COUNT(num_et) FROM inscrit WHERE num_c = 10 Nombre de cours auxquels au moins un étudiant est inscrit SELECT COUNT(DISTINCT num_c) FROM inscrit
51 Groupement en SQL Problème : comment généraliser les requêtes précédentes? Par exemple : calculer les moyennes de tous les cours Partitionner la table resultat cours par cours Pour chaque cours calculer la moyenne En SQL : GROUP BY [HAVING condition] A la suite de SELECT... FROM... WHERE HAVING sélectionne certains groupes
52 Exemples Numéros des cours et moyennes associées SELECT num_c, AVG(note) FROM resultat GROUP BY num_c Numéros et moyennes des cours dont toutes les notes sont strictement inférieures à 10 SELECT num_c, AVG(note) FROM resultat GROUP BY num_c HAVING MIN(note) < 10
53 Manipulation des données : mise à jour des tables Insertion, en spécifiant les valeurs du n-uplet à insérer une requête dont le résultat est ajouté à la table Suppression Les n-uplets à supprimer sont caractérisés par une condition (clause WHERE) Modification Les n-uplets à modifier sont caractérisés par une condition (clause WHERE) Les attributs à modifier sont listés avec les modifications
54 Insertion INSERT INTO <table> [( attribut [,attribut] )] {VALUES <valeur> [, <valeur>] <requête>} Insérer (10, 'Jules', 'Paris') dans etudiant INSERT INTO etudiant VALUES (10, 'Jules', 'Paris') Insérer dans resultat les numéros de cours et d'étudiants de inscrit INSERT INTO result (num_et, num_c) SELECT num_et, num_c FROM inscrit
55 Suppression DELETE FROM <table> [WHERE <condition>] Supprimer de resultat toutes les notes de l'étudiant de numéro 100 DELETE FROM resultat WHERE num_et = 100 Sans condition, la table est vidée DELETE FROM prof Supprime tous les enseignants de la table prof
56 Modification UPDATE <table> SET <attribut> = {expression NULL} [<attribut> = {expression NULL}] [WHERE <condition>] Ajouter un point à toutes les notes inférieures ou égales à 7 UPDATE resultat SET note = note +1 WHERE note <= 7
57 Définition des données Création d'une table : CREATE TABLE <table> (<attribut> = type [contrainte [contrainte]...], [<attribut> = type [contrainte [contrainte]...],...]) Types ( Numérique : INT, NUMBER[(x,y)],... Caractères : CHAR(x), VARCHAR(x),... Date...
58 Définition des données Contraintes élémentaires Valeur par défaut : DEFAULT Clé primaire : PRIMARY KEY interdit les répétitions et la valeur NULL, facilite l'accès par un index Unique : UNIQUE interdit les répétitions Clé étrangère : FOREIGN KEY réfère une clé primaire d'une autre table et oblige les valeurs dans la table courante à être parmi les valeurs des clés primaires
59 Exemple Création de la table etudiant CREATE TABLE etudiant ( num_et INT PRIMARY KEY, nom_et varchar(10) NOT NULL, adr_et varchar(20)) Création de la table cours CREATE TABLE cours ( num_c INT PRIMARY KEY, nom_c varchar(10), niveau varchar(10) NOT NULL)
60 Exemple Création de la table resultat CREATE TABLE inscrit ( num_et INT REFERENCES etudiant(num_et), num_c INT REFERENCES cours(num_c), note INT DEFAULT 10 CONSTRAINT note_range CHECK (note BETWEEN 0 AND 20), CONSTRAINT note_unique UNIQUE(num_et, num_c))
1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Plus en détailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
Plus en détailBases de données relationnelles
Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses
Plus en détail1 Introduction et installation
TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on
Plus en détailSQL Historique 1982 1986 1992
SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse
Plus en détailLangage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes
Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition
Plus en détailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
Plus en détailBases de données avancées Introduction
Bases de données avancées Introduction Dan VODISLAV Université de Cergy-Pontoise Master Informatique M1 Cours BDA Plan Objectifs et contenu du cours Rappels BD relationnelles Bibliographie Cours BDA (UCP/M1)
Plus en détailBases de Données relationnelles et leurs systèmes de Gestion
III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation
Plus en détailIntroduction au Système de Gestion de Base de Données et aux Base de Données
Introduction au Système de Gestion de Base de Données et aux Base de Données Formation «Gestion des données scientifiques : stockage et consultation en utilisant des bases de données» 24 au 27 /06/08 Dernière
Plus en détailCours Base de données relationnelles. M. Boughanem, IUP STRI
Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),
Plus en détailLe langage SQL Rappels
Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,
Plus en détailBases de Données. Plan
Université Mohammed V- Agdal Ecole Mohammadia d'ingénieurs Rabat Bases de Données Mr N.EL FADDOULI 2014-2015 Plan Généralités: Définition de Bases de Données Le modèle relationnel Algèbre relationnelle
Plus en détailLe Langage SQL version Oracle
Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn
Plus en détailLes bases de données
Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive
Plus en détailLe langage SQL pour Oracle - partie 1 : SQL comme LDD
Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger
Plus en détailExemple 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
Exemple accessible via une interface Web Une base de données consultable en ligne : Bases de données et systèmes de gestion de bases de données The Trans-atlantic slave trade database: http://www.slavevoyages.org/tast/index.faces
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailSGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)
SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients
Plus en détailPartie II Cours 3 (suite) : Sécurité de bases de données
Partie II Cours 3 (suite) : Sécurité de bases de données ESIL Université de la méditerranée Odile.Papini@esil.univ-mrs.fr http://odile.papini.perso.esil.univmed.fr/sources/ssi.html Plan du cours 1 Introduction
Plus en détailISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL
ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé
Plus en détailNFA 008. Introduction à NoSQL et MongoDB 25/05/2013
NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée
Plus en détailIntroduction aux Bases de Données
Introduction aux Bases de Données I. Bases de données I. Bases de données Les besoins Qu est ce qu un SGBD, une BD Architecture d un SGBD Cycle de vie Plan du cours Exemples classiques d'applications BD
Plus en détailECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;
RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines
Plus en détailInformation utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/
Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/
Plus en détailRappel sur les bases de données
Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant
Plus en détail1. LA GESTION DES BASES DE DONNEES RELATIONNELLES
Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de
Plus en détailLe Langage De Description De Données(LDD)
Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,
Plus en détailTD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009
TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 Loïc Maisonnasse 1 Objectif Ce TD a pour objectif de vous familiariser avec le langage de requêtes SQL. Et de vous apprendre à écrire des requêtes SQL pour
Plus en détail16H Cours / 18H TD / 20H TP
INTRODUCTION AUX BASES DE DONNEES 16H Cours / 18H TD / 20H TP 1. INTRODUCTION Des Fichiers aux Bases de Données 2. SYSTEME DE GESTION DE BASE DE DONNEES 2.1. INTRODUCTION AUX SYSTEMES DE GESTION DE BASES
Plus en détailBases de données relationnelles : Introduction
Bases de données relationnelles : Introduction historique et principes V. Benzaken Département d informatique LRI UMR 8623 CNRS Université Paris Sud veronique.benzaken@u-psud.fr https://www.lri.fr/ benzaken/
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détailINTRODUCTION : Données structurées et accès simplifié
INTRODUCTION : Données structurées et accès simplifié À l'origine de l'informatique, le stockage d'information se faisait sur cartes perforées. Ces supports pauvres ne permettaient pas de définir la structuration
Plus en détailINSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.
INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES Durée : 1h30 Date : 17/05/2006 Coordonnateurs : Amel Bouzeghoub et Bruno Defude Documents autorisés : ceux distribués en cours Avertissements
Plus en détailPrésentation du module Base de données spatio-temporelles
Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes
Plus en détailLe langage SQL (première partie) c Olivier Caron
Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)
Plus en détailTP3 : Creation de tables 1 seance
Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer
Plus en détailIntroduction aux bases de données
Introduction aux bases de données Références bibliographiques Jeff Ullman,Jennifer Widom, «A First Course in Database systems», Prentice-Hall, 3rd Edition, 2008 Hector Garcia-Molina, Jeff Ullman, Jennifer
Plus en détailChapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)
Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Un modèle de données définit un mode de représentation de l information selon trois composantes : 1. Des structures de données. 2. Des contraintes qui permettent
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailPlan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD
Plan Bases de Données L3 Info Céline Rouveirol 2010-2011 Bases de Données 1 / 77 Sources des transparents Bases de Données 2 / 77 Bases de SQL - M.P. Dorville/F. Goasdoué, LRI, Université Paris Sud - V.
Plus en détailINTRODUCTION AUX BASES de DONNEES
INTRODUCTION AUX BASES de DONNEES Équipe Bases de Données LRI-Université Paris XI, Orsay Université Paris Sud Année 2003 2004 1 SGBD : Fonctionnalités et Principes Qu est qu une base de données? Un Système
Plus en détailLes Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.
Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger
Plus en détailBases de Données Avancées
1/62 Bases de Données Avancées Introduction & Rappel Conception et Modélisation Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR
Plus en détailBases de données et sites WEB Licence d informatique LI345
Bases de données et sites WEB Licence d informatique LI345 Anne Doucet Anne.Doucet@lip6.fr http://www-bd.lip6.fr/ens/li345-2013/index.php/lescours 1 Contenu Transactions en pratique Modèle relationnel-objet
Plus en détail14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.
Gaëlle PERRIN SID2 Grenoble Le 10/04/2014 Base de Données (BD) : une grande quantité de données, centralisées ou non, servant pour les besoins d'une ou plusieurs applications, interrogeables et modifiables
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailIT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr
IT203 : Systèmes de gestion de bases de données A. Zemmari zemmari@labri.fr 1 Informations pratiques Intervenants : Cours : (A. Zemmari zemmari@labri.fr) TDs, TPs : S. Lombardy et A. Zemmari Organisation
Plus en détailModélisation de bases de données : Le modèle relationnel
Modélisation de bases de données : Le modèle relationnel Rappel chapitre 1 C est quoi un modèle? Type de modèle : Modèle hiérarchique Modèle réseau Modèle objet Modèle relationnel Cours BD Dr REZEG K 1
Plus en détailI4 : Bases de Données
I4 : Bases de Données Passage de UML au modèle relationnel Georges LOUIS Département Réseaux et Télécommunications Université de La Rochelle Module I4 2008-2009 1 G.Louis Sommaire 1 Des classes aux tables
Plus en détailSQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0
2013 SQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0 Table des matières Signalétique... 2 1 Les bases du SQL... 3 2 SQL server... 6 2 Références des exercices...21 DEHECQ Olivier
Plus en détailBases de données et sites WEB
Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues
Plus en détailMagasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)
Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Définition (G. Gardarin) Entrepôt : ensemble de données historisées variant
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailLE LANGAGE SQL2 1. INTRODUCTION
LE LANGAGE SQL2 1. INTRODUCTION Les serveurs de données relationnels présentent aujourd hui une interface externe sous forme d un langage de recherche et mise à jour, permettant de spécifier les ensembles
Plus en détailCours Bases de données
Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
Plus en détailPartie 0 : Gestion des tablespace et des utilisateurs... 3
Sommaire Partie 0 : Gestion des tablespace et des utilisateurs... 3 1- Créer deux TableSpaces votre_nom-tbs et Votre_nom-TempTBS :... 3 2. Créer un utilisateur qui porte votre nom :... 3 3. Attribuer à
Plus en détailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
Plus en détailSystèmes de Gestion de Bases de Données
Systèmes de Gestion de Bases de Données Luiz Angelo STEFFENEL DUT Informatique 2ème année IUT Nancy Charlemagne Vues Vue : une table virtuelle de la base de données dont le contenu est défini par une requête
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailVincent Augusto 2010-2011
le des Systèmes Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne 2010-2011 Un 1/73 le des Un 2/73 1 2 3 4 le 5 6 7 8 Un le des Un 3/73 Contenu du cours : Techniques pour l analyse
Plus en détailBases de Données. Stella MARC-ZWECKER. stella@unistra.u-strasbg.fr. Maître de conférences Dpt. Informatique - UdS
Bases de Données Stella MARC-ZWECKER Maître de conférences Dpt. Informatique - UdS stella@unistra.u-strasbg.fr 1 Plan du cours 1. Introduction aux BD et aux SGBD Objectifs, fonctionnalités et évolutions
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions
Plus en détailIntégrité des données
. Contraintes d intégrité : Définition et objectif Intégrité des données Définition des contraintes Vérification des contraintes Contrainte d'intégrité : propriété sémantique que doivent respecter les
Plus en détailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détailMaster Exploration Informatique des données DataWareHouse
Master Exploration Informatique des données DataWareHouse Binôme Ahmed BENSI Enseignant tahar ARIB SOMMAIRE I. Conception...1 1. Contexte des contrats...1 2. Contexte des factures...1 II. Modèle physique...2
Plus en détailMySQL / SQL EXEMPLES
MySQL_exemples_janv04_mpT EXEMPLES 1 MySQL / SQL EXEMPLES Typologie du langage Il est possible d'inclure des requêtes SQL dans un programme écrit dans un autre langage (en langage C par exemple), ainsi
Plus en détailCompétences Business Objects - 2014
Compétences Business Objects - 2014 «Mars-Juin 2014. Réf : Version 1 Page 1 sur 34 Sommaire CONTEXTE DE LA REMISE A NIVEAU EN AUTOFORMATION... 3 1. MODELISATION... 4 1.1 DESCRIPTION FONCTIONNEL DE L'APPLICATION
Plus en détailCours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry
Cours 3 Développement d une application BD 1 Plan du cours Gestion de la sécurité des données Optimisation des schémas de bases via la dénormalisation Utilisation de vues Placement du code applicatif dans
Plus en détailLangage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailSQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste
Christian Soutou Avec la participation d Olivier Teste SQL pour Oracle 4 e édition Groupe eyrolles, 2004, 2005, 2008, 2010, is BN : 978-2-212-12794-2 Partie III SQL avancé La table suivante organisée en
Plus en détailBases de données élémentaires Maude Manouvrier
Licence MI2E- 1ère année Outils en Informatique Bases de données élémentaires Maude Manouvrier Définitions générales et positionnement du cours dans la formation Vocabulaire relatif aux bases de données
Plus en détailI. MySQL : Serveur et SGBD
Le Système de Gestion de Base de Données MySQL I. MySQL : Serveur et SGBD Menu I. MySQL : Serveur et SGBG II. Création d'une base de données avec MySQL MySQL est un système de gestion et conception de
Plus en détailBases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre
Bases de Données Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre Synthèse : conception de BD langage de modélisation famille de SGBD SGBD Analyse du
Plus en détailIFT3030 Base de données. Chapitre 1 Introduction
IFT3030 Chapitre 1 Introduction Plan du cours Introduction Architecture Modèles de données Modèle relationnel Algèbre relationnelle SQL Conception Fonctions avancées Concepts avancés Modèle des objets
Plus en détailCours SQL. Base du langage SQL et des bases de données
Cours SQL Base du langage SQL et des bases de données Auteur Tony Archambeau Site web http://sql.sh Date 24 mai 2014 Licence Mis à disposition selon les termes de la licence Creative Commons Attribution
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailChapitre 5 LE MODELE ENTITE - ASSOCIATION
Chapitre 5 LE MODELE ENTITE - ASSOCIATION 1 Introduction Conception d une base de données Domaine d application complexe : description abstraite des concepts indépendamment de leur implémentation sous
Plus en détailInitiation aux bases de données (SGBD) Walter RUDAMETKIN
Initiation aux bases de données (SGBD) Walter RUDAMETKIN Bureau F011 Walter.Rudametkin@polytech-lille.fr Moi Je suis étranger J'ai un accent Je me trompe beaucoup en français (et en info, et en math, et...)
Plus en détailBases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel 31071 Toulouse Cedex 7
Bases de données Yamine AIT AMEUR INPT-ENSEEIHT DIMA 2 Rue Charles Camichel 31071 Toulouse Cedex 7 Première partie Introduction 1 Généralités et notions de base Première partie Introduction 1 Généralités
Plus en détailCours 4 : Agrégats et GROUP BY
Cours 4 : Agrégats et GROUP BY Agrégat Fonction qui effectue un calcul sur l ensemble des valeurs d un attribut pour un groupe de lignes Utilisation dans une clause SELECT ou dans une clause HAVING 3 types
Plus en détailBases de données. Chapitre 1. Introduction
Références : Bases de données Pierre Wolper Email : pw@montefiore.ulg.ac.be URL : http : //www.montefiore.ulg.ac.be/~pw/ http : //www.montefiore.ulg.ac.be/ ~pw/cours/bd.html Henry F. Korth, Abraham Silberschatz,
Plus en détailPatrice BOURSIER. Professeur, Univ. de La Rochelle. patrice.boursier@univ-lr.fr. Bases de Données. Notes de cours
Patrice BOURSIER Professeur, Univ. de La Rochelle patrice.boursier@univ-lr.fr Bases de Données Notes de cours SOMMAIRE Chapitre 1 : Introduction Chapitre 2 : Modèle conceptuel Chapitre 3 : Modèle relationnel
Plus en détailSystèmes d information et bases de données (niveau 1)
Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel
Plus en détailOptimisations des SGBDR. Étude de cas : MySQL
Optimisations des SGBDR Étude de cas : MySQL Introduction Pourquoi optimiser son application? Introduction Pourquoi optimiser son application? 1. Gestion de gros volumes de données 2. Application critique
Plus en détailBases de données relationnelles & SQL
Bases de données relationnelles & SQL Objectifs Appréhender les concepts du modèle relationnel. Etre capable de concevoir un schéma relationnel. Etre capable de créer une base de données relationnelle
Plus en détailBases de données Cours 4 : Le langage SQL pour ORACLE
Cours 4 : Le langage SQL pour ORACLE POLYTECH Université d Aix-Marseille odile.papini@univ-amu.fr http://odile.papini.perso.esil.univmed.fr/sources/bd.html Plan du cours 1 Introduction 2 Identificateurs
Plus en détailBases de Données Relationnelles. Le Modèle Relationnel
Bases de Données Relationnelles Le Modèle Relationnel Le modèle relationnel modèle de niveau logique modèle simple : deux concepts relation (table) attribut (colonne) défini par Ted Codd en 1970 ; prix
Plus en détailTP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager
TP base de données SQLite 1 Différents choix possibles et choix de SQLite : La plupart des logiciels de gestion de base de données fonctionnent à l aide d un serveur. Ils demandent donc une installation
Plus en détailGestion de base de données
Université Libre de Bruxelles Faculté de Philosophie et Lettres Département des Sciences de l Information et de la Communication Gestion de base de données Projet : Take Off ASBL Cours de M. A. Clève STIC-B-505
Plus en détailInitiation à SQL. Le langage de communication avec une base de données relationnelles. Application avec PostgreSQL. Nathalie Camelin 2011/2012
Initiation à SQL Le langage de communication avec une base de données relationnelles Application avec PostgreSQL Nathalie Camelin 2011/2012 Université du Maine Institut Claude Chappe D'après Levy Estève
Plus en détailChapitre VIII. Les bases de données. Orientées Objet. Motivation
Chapitre VIII Motivation Le modèle relationnel connaît un très grand succès et s avère très adéquat pour les applications traditionnelles des bases de données (gestion) Les bases de données Orientées Objet
Plus en détailBases de données. PTSI Lycée Eiffel. 28 février 2014
Bases de données PTSI Lycée Eiffel 28 février 2014 Introduction Pour ce troisième chapître, nous allons mettre de côté notre apprentissage de Pyhton pour nous intéresser à un sujet fondamental dans l informatique
Plus en détailBases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications
Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications P.-A. Sunier, HEG-Arc Neuchâtel avec le concours de J. Greub pierre-andre.sunier@he-arc.ch http://lgl.isnetne.ch/
Plus en détail