Systèmes de Gestion de Bases de Données



Documents pareils
Langage SQL : créer et interroger une base

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

Partie II Cours 3 (suite) : Sécurité de bases de données

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

Le langage SQL Rappels

Le Langage SQL version Oracle

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

Les bases de données

MySQL / SQL EXEMPLES

Cours 4 : Agrégats et GROUP BY

Le Langage De Description De Données(LDD)

Bases de données relationnelles

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

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

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD

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

1 Introduction et installation

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

Cours SQL. Base du langage SQL et des bases de données

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Bases de données et sites WEB

Intégrité des données

TP3 : Creation de tables 1 seance

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

SQL Historique

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

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

16H Cours / 18H TD / 20H TP

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

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

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

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

OpenPaaS Le réseau social d'entreprise

Gestion des utilisateurs et de leurs droits

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

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

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

Devoir Data WareHouse

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO S2-IO2 Bases de données: Jointures, Transactions

Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications

I4 : Bases de Données

Olivier Mondet

Vincent Augusto

INTRODUCTION : Données structurées et accès simplifié

1 Position du problème

1 Modélisation d une base de données pour une société de bourse

Java DataBaseConnectivity

Compétences Business Objects

FileMaker 13. Guide de référence SQL

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

LA GESTION DES VUES 1. INTRODUCTION

TP Bases de données réparties

Les Entrepôts de Données

Bases de Données. Plan

Master Exploration Informatique des données DataWareHouse

Bases de Données Réparties Concepts et Techniques. Matthieu Exbrayat ULP Strasbourg - Décembre 2007

Cours 1 : introduction

Oracle Décisionnel : Modèle OLAP et Vue matérialisée D BILEK

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

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

Historisation des données

Mozaïk. Nouveautés et améliorations. de la version

A QUOI SERVENT LES BASES DE DONNÉES?

Bases de données élémentaires Maude Manouvrier

LE LANGAGE SQL2 1. INTRODUCTION

BTS/CGO P10 SYSTEME INFORMATION Année

Plan 1/9/2013. Génération et exploitation de données. CEP et applications. Flux de données et notifications. Traitement des flux Implémentation

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Bases de données réparties: Fragmentation et allocation

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

Bases de données - Modèle relationnel

1. Base de données SQLite

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

Réplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f

Notes de cours : bases de données distribuées et repliquées

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Bases de données. PTSI Lycée Eiffel. 28 février 2014

Sommaire. Etablir une connexion avec une base de données distante sur PostGreSQL

Sybase Adaptive Server Enterprise 15

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

Bases de données Cours 4 : Le langage SQL pour ORACLE

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

Introduction aux Bases de Données 2004/2005

Optimisation SQL. Quelques règles de bases

Présentation Windows Azure Hadoop Big Data - BI

CREATION WEB DYNAMIQUE

UE8 Systèmes d information de gestion Corrigé indicatif

TD n 10 : Ma première Base de Données

Base de données relationnelle et requêtes SQL

Administration de Bases de Données : Optimisation

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

COURS de BASES de DONNEES

Dossier I Découverte de Base d Open Office

PHP 4 PARTIE : BASE DE DONNEES

Transcription:

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 Pour l utilisateur, la vue apparaît comme un table réelle Mais elle n existe pas dans la base comme une ensemble stocké de valeurs peut représenter un sous ensemble d'une table ou alors la jonction de plusieurs tables

Vues PIECES NoPiece Description QtéStock QtéComm x01 Chaise 5 10 p02 Table de bureau 1 0 p03 Table imprimante 2 5...

Vues PIECES NoPiece Description QtéStock QtéComm x01 Chaise 5 10 p02 Table de bureau 1 0 p03 Table imprimante 2 5...

Vues PIECES NoPiece Description QtéStock QtéComm x01 Chaise 5 10 p02 Table de bureau 1 0 p03 Table imprimante 2 5...

Vues Prod Fournisseur

Vues Prod Fournisseur

Création de vue CREATE VIEW <nom vue>as <requête> [WITH CHECK OPTION]; WITH CHECK OPTION : vérifier que les tuples insérés ou mis à jour via la vue doivent satisfaire aux conditions de la question définissant la vue Ex : une vue seulement avec des voitures de la marque 'Renault' empêche l'insertion d'une voiture 'Fiat'

Exemple de vues CREATE VIEW Passager_Paris AS SELECT * FROM Passagers WHERE Ville= Paris ; CREATE VIEW Passager_Pour_Londres AS SELECT p.idp, p.nomp, r.dated, v.heure, r.idr FROM Passagers p, Réservations r, Vols v WHERE p.idp=r.idp AND r.idv=v.idv AND v.arrivée= Londres WITH CHECK OPTION ;

Suppression de vue DROP VIEW <nom vue> Supprime la vue <nom vue> du système Ne supprime pas les données

Interroger une vue Même procédure utilisée pour les tables SELECT <colonnes> from <vue> where <conditions>; Ex : SELECT nom, prénom FROM vuemarque WHERE marque='citroen';

Avantages des vues (1) Indépendance logique des programmes par rapport aux données Simplicité - facilité l accès à la base Masquer la complexité des schémas Transformer des requêtes multi tables en requêtes mono table Sécurité Un utilisateur ne peut accéder qu aux données des vues auxquelles il a droit d accès

Avantages des vues (2) Préserver la confidentialité et la personnalisation Intégrité des données Si des données sont lues ou introduites par le biais d une vue, le SGBD peut vérifier qu elles respectent les contraintes d intégrité Isolations des modifications Une vue peut présenter une image cohérente, même si les tables sont décomposées, restructurées, renommées

Inconvénients Performances Le SGBD doit toujours traduire les vues en requêtes (souvent complexes) : temps important pour exécuter une requête sur une vue Restrictions de mise à jour Une mise à jour sur une vue se répercute sur les tables composantes; les vue complexes sont en lecture seule, donc mise à jour impossible

Interrogation au travers des vues R1 F Vue Q Rn Base de données V=F(R1,, Rn) R=Q(V) R=Q( F(R1,, Rn) )

Exemple Les Vols «Air France» de Paris à Londres SELECT v.idv, v.départ, v.arrivée, v.heure FROM Vols v, Compagnies_Aériennes c, WHERE v.idc=c.idc AND c.nomc LIKE %Air%France% AND v.arrivée= Londres AND v.départ= Paris ; Une vue contenant les vols d Air France CREATE VIEW VolsAF AS SELECT v.idv, v.départ, v.arrivée, v.heure FROM Vols v, Compagnies_Aériennes c WHERE v.idc=c.idc AND c.nomc LIKE %Air%France% ; Requête sur la vue SELECT * FROM VolsAF WHERE Arrivée= Londres AND Départ= Paris ;

Vues modifiables Pas toutes les vues dont modifiables Conditions pour qu une vue soit modifiable : Le SGBD doit être capable de faire remonter chaque ligne de la vue à sa ligne source Les doubles ne doivent pas être éliminés (SELECT ne doit pas contenir DISTINCT) La clause ne doit spécifier qu une seule table (ou vue) susceptible d être mise à jour Chaque élément de la sélection doit être une référence de colonne; pas d expressions, colonnes calculées, fonctions (SUM, COUNT, etc.) La clause WHERE ne doit pas inclure des sous requêtes, JOIN, UNION, INTERSECT, EXCEPT, GROUP BY ou HAVING Les autres attributs d'une table doivent accepter la valeur NULL Sinon, vue en lecture seule