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

Dimension: px
Commencer à balayer dès la page:

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

Transcription

1 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 requêtes SQL sont longues à s exécuter et d éviter quelques pièges. 1. Créer des index, ils améliorent la performance des requêtes qui retournent un faible pourcentage de rangées d une table. 2. Ne créer les index sur une table qu après avoir inséré les données dans celle-ci 3. Limiter le nombre d index par table. Si des rangées sont insérées ou détruites dans une table, alors tous les index de cette table doivent être mis à jour. Si une table a beaucoup d index et qu on a beaucoup d insertions, de mises à jour, de destructions, alors cela peut affecter la performance de l application. 4. Ne pas créer d index pour les colonnes qui sont fréquemment modifiées car les pointeurs de l index doivent constamment être mis à jour. 5. Les clés primaires des tables doivent faire partie d un index unique. 6. Les colonnes qui servent de prédicats pour les requêtes avec jointure doivent faire partie d un index. 7. Les colonnes qui sont fréquemment utilisées dans les clauses WHERE de requêtes doivent faire partie d un index. 8. Un index peut être utilisé si une colonne de l index est référencée dans la clause WHERE d une requête et que la colonne indexée n a pas été modifiée par une fonction et qu on ne teste pas avec IS NULL ou IS NOT NULL. 9. Certains prédicats dans une clause WHERE n utiliseront pas d index même si les colonnes sont incluses dans un index : colonne1 > colonne2 colonne1 < colonne2 colonne1 >= colonne2 colonne1 <= colonne2 où colonne1 et colonne2 sont dans la même table. colonne IS NULL colonne NOT IN (...) colonne!= expression colonne LIKE %YYY Voici des exemples pour illustrer ces notions de base : On a une table qui représente les écritures comptables pour une compagnie fictive. CREATE TABLE ECRITURE ( ECR_NO NUMBER NOT NULL, ECR_COMPTE NUMBER NOT NULL, ECR_DATE DATE NOT NULL, ECR_TYPE CHAR(5), ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ; 1

2 CREATE UNIQUE INDEX ECR_IDX1 ON ECRITURE (ECR_NO) ; CREATE UNIQUE INDEX ECR_IDX2 ON ECRITURE (ECR_DATE,ECR_TYPE,ECR_SENS) ; Les requêtes suivantes utiliseront un index : WHERE ecr_no = 1234 ; Selon explain plan : Table access by rowid ecriture index unique scan ecr_idx1 WHERE ecr_no BETWEEN 200 AND 500 ; Selon explain plan : Table access by rowid ecriture Index unique scan ecr_idx1 Les requêtes suivantes n utiliseront pas d index car on modifie la colonne indexée : WHERE ecr_no*10=4320 ; WHERE to_char(ecr_date, YYYYMMDD ) = ; Supposons qu on a un index sur la colonne ecr_date. Les requêtes suivantes n utiliseront pas l index car les valeurs null n ont pas d index même si la colonne ecr_date fait partie d un index. WHERE ecr_date IS NULL ; ou 2

3 WHERE ecr_date IS NOT NULL ; Par contre l index sera utilisé dans la requête suivante : WHERE ecr_date = to_date( , yyyymmdd ) ; Selon explain plan : Table access by rowid ecriture index range scan ecr_idx2 Les prédicat avec négations vont empêcher d utiliser l index comme par exemple : WHERE ecr_date!= to_date( , yyyymmdd ) ; Convertissez vos négations de la façon suivante : AVANT APRES NOT > <= NOT >= < NOT < >= NOT <= > 10. Oracle utilise un système de pointage pour les prédicats. Ils sont ordonnées du plus efficace au moins efficace. On peut en déduire qu une requête comme : UPDATE ecriture WHERE rowid=ecr_rec.rowid ; sera plus rapide que la requête : UPDATE ecriture WHERE ecr_no=ecr_rec.ecr_no ; 1) rowid=constante 2) colonne indexée unique=constante 3) index entier concaténé unique=constante 3

4 4) index entier concaténé non unique=constante 5) index non unique=constante 6) index entier concaténé >= borne inférieure 7) index partiel concaténé 8) colonne indexée unique avec BETWEEN borne inférieure et borne supérieure 9) colonne indexée non unique avec BETWEEN borne inférieure et borne supérieure 10) colonne indexée unique <ou> constante 11) colonne indexée non unique 12) jointure seulement 13) max ou min d une colonne indexée 14) order by index entier 15) recherche entière dans la table On remarque qu un index unique est plus efficient qu un index non unique car la clé a une seule entrée. 11. Un index concaténé contient 2 ou plusieurs colonnes. Il faut faire attention lors de l usage de ces index. Lorsque l on crée un index concaténé, la colonne la plus utilisée doit être spécifiée en premier. Détruire l index ecr_idx2 et créer l index suivant : CREATE INDEX ecr_idx3 ON ecriture (ecr_compte,ecr_date) ; La requête suivante n utilisera pas l index car elle ne réfère pas a la partie de tête de l index : WHERE ecr_date=to_date9` , yyyymmdd ) ; La requête suivante utilisera l index car elle réfère a la partie de tête de l index : WHERE ecr_compte=4000 ; Selon explain plan : Table access by rowid ecriture index range scan ecr_idx3 12. L index ne sera pas utilisé dans une clause OR si : la requête contient une clause connect by la requête contient une jointure externe (outer join) l optimiseur décide de ne pas utiliser d index car cela n améliorait pas la performance de la requête. 4

5 13. Si le but d une sous-requête est de vérifier l existence d une rangée alors il est préférable d utiliser la clause WHERE EXISTS. Vérifier avec explain plan. CREATE TABLE compte ( cpt_no NUMBER NOT NULL, cpt_desc CHAR(50)) ; CREATE INDEX cpt_idx1 ON compte (cpt_no) ; e WHERE e.ecr_compte IN (SELECT c.cpt_no FROM compte c WHERE c.cpt_desc LIKE compte% ) ; Selon explain plan : Nested loops View Sort Join Table access full compte Table access by rowid ecriture Index range scan ecr_idx3 e WHERE EXIST (SELECT 1 FROM compte c WHERE c.cpt_no=e.ecr_compte AND c.cpt_desc LIKE compte% ) ; Selon explain plan : Filter Table access full ecriture Table access by rowid compte index range scan cpt_idx1 Si le nombre de rangées dans la table des écritures est plus élevé que dans la table des comptes alors un Table access full pour écriture sera désavantageux. Donc la prémière requête semblerait la plus efficace puisqu elle utilise l index ecr_idx3 pour ecriture. 14. Vous devriez indexer les colonnes qui servent de jointure (Join) entre les tables. La Table qui est la dernière dans la clause FROM devient la table dominante (driving table) si les prédicats sont égaux selon le système de pointage. Si aucun index n a été créé, alors Oracle devra effectuer un sort Merge Join qui créera une table temporaire triée pour chaque table dans la jointure. Ces tables temporaires seront fusionnées selon les prédicats de la jointure. Par exemple, la requête suivante sera longue a s exécuter puisqu elle exige une lecture complète des tables. SELECT e.ecr_type, c.cpt_nom e, compte c WHERE e.ecr_compte=c.cpt_no AND e.ecr_type!= J ; 5

6 En premier la table compte est mise dans une table temporaire et triée. Ceci exige une lecture complète de la table compte. SELECT cpt_no FROM compte ORDER BY cpt_no Après, la table ecriture est examinée et pour chaque rangée, l information est mise dans la table temporaire et triée. Ceci exige une lecture complète de la table ecriture. SELECT ect_type, ecr_compte WHERE ecr_type!= J ORDER BY ecr_compte Et les deux tables sont fusionnées selon le prédicat de la jointure ecr_compte=cpt_no. Pour chaque rangée de la table compte (driving table), on doit aller chercher la rangée correspondante dans la table ecriture. Comme la table ecriture n est pas indexée, on devra faire une lecture complète de la table pour trouver le numéro de compte correspondant. Selon explain plan : Merge Join Sort join Table access full compte Sort join Table access full ecriture. 15. La table qui n est pas indexée dans un join devient la table dominante. (driving table) DROP INDEX cpt_idx1 ; selon la requête suivante : SELECT e.ecr_type, c.cpt_nom e, compte c WHERE e.ecr_compte=c.cpt_no AND e.ecr_type!= J ; Selon explain plan : Nested loops Table access full compte Table access by rowid ecriture Index range scan ecr_idx3 S il y a un index sur la colonne ecr_compte, alors compte devient la driving table. Donc pour chaque rangée de compte, Oracle ira chercher l information correspondante (ecr_compte=cpt_no) dans la table ecriture avec l index sur ecr_compte au lieu de faire peut-être une lecture complète de la table ecriture. 16. Placer la table avec le plus petit nombre de rangées qualifiées la dernière dans la clause FROM. 6

Optimisation SQL. Quelques règles de bases

Optimisation SQL. Quelques règles de bases Optimisation SQL Quelques règles de bases Optimisation des ordres SQL Page 2 1. QUELQUES RÈGLES DE BASE POUR DES ORDRES SQL OPTIMISÉS...3 1.1 INTRODUCTION...3 1.2 L OPTIMISEUR ORACLE...3 1.3 OPTIMISEUR

Plus en détail

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

COMMANDES 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étail

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

Langage 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étail

Requêtes SQL avec la date et le groupement Chapitre 7 série 3 Base de données AcciRoute SOLUTIONS

Requêtes SQL avec la date et le groupement Chapitre 7 série 3 Base de données AcciRoute SOLUTIONS 2003-07-01 1 Requêtes SQL avec la date et le groupement Chapitre 7 série 3 Base de données AcciRoute SOLUTIONS Voici MRD de la BD AcciRoute pour représenter les rapports d accidents de la route. Le MRD

Plus en détail

La présente publication est protégée par les droits d auteur. Tous droits réservés.

La présente publication est protégée par les droits d auteur. Tous droits réservés. Editeur (Medieninhaber/Verleger) : Markus Winand Maderspergerstasse 1-3/9/11 1160 Wien AUSTRIA Copyright 2013 Markus Winand La présente publication est protégée par les droits d auteur.

Plus en détail

Le Langage SQL version Oracle

Le 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étail

Le Langage De Description De Données(LDD)

Le 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étail

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

SQL. 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étail

Langage SQL : créer et interroger une base

Langage 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étail

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. 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étail

Le langage SQL Rappels

Le 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étail

Auto-évaluation DB2 for z/os: cours de base

Auto-évaluation DB2 for z/os: cours de base Auto-évaluation DB2 for z/os: cours de base Document: f1067test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION DB2 FOR Z/OS:

Plus en détail

11. MySQL. Cours Web. MySQL. 11. MySQL. 11. MySQL. Structured Query Language. Lionel Seinturier. Université Pierre & Marie Curie

11. MySQL. Cours Web. MySQL. 11. MySQL. 11. MySQL. Structured Query Language. Lionel Seinturier. Université Pierre & Marie Curie Cours Web Lionel Seinturier Université Pierre & Marie Curie Lionel.Seinturier@lip6.fr Structured Query Language Langage de manipulation des données stockées dans une base de données interrogation/insertion/modification/suppression

Plus en détail

SQL Historique 1982 1986 1992

SQL 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étail

Web dynamique. Techniques, outils, applications. (Partie C)

Web dynamique. Techniques, outils, applications. (Partie C) Web dynamique Techniques, outils, applications (Partie C) Nadir Boussoukaia - 2006 1 SOMMAIRE 1. MySQL et PHP (20 min) 2. SQL (petits rappels) (20 min) 2 MySQL et PHP Synthèse 3 MySQL et PHP SGBD MySQL

Plus en détail

Bases de données relationnelles

Bases 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étail

Les bases de données

Les 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étail

SQL. Requête la plus simple. Projection. Requête la plus simple. Différents modes d interrogation. Requêtes mécanismes d interrogation des données

SQL. Requête la plus simple. Projection. Requête la plus simple. Différents modes d interrogation. Requêtes mécanismes d interrogation des données Requêtes mécanismes d interrogation des données SQL! En entrée : une ou plusieurs tables! En sortie : une table réponse sandra.bringay@univ-montp3.fr roland.mahiques@univ-montp3.fr alexandre.pinlou@univ-montp3.fr

Plus en détail

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

Bases 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étail

TP Bases de données réparties

TP Bases de données réparties page 1 TP Bases de données réparties requêtes réparties Version corrigée Auteur : Hubert Naacke, révision 5 mars 2003 Mots-clés: bases de données réparties, fragmentation, schéma de placement, lien, jointure

Plus en détail

Les bases de l optimisation SQL avec DB2 for i

Les bases de l optimisation SQL avec DB2 for i Les bases de l optimisation SQL avec DB2 for i Christian GRIERE cgriere@fr.ibm.com Common Romandie 3 mai 2011 Les fleurs et les requêtes Lorsque l on veut planter de nouvelles fleurs dans un jardin il

Plus en détail

Modèle entité-association 6pts

Modèle entité-association 6pts Examen NFP 107 17 juin 2009 Sujet 1 3H documents autorisés Enseignant : Christine Plumejeaud Modèle entité-association 6pts Le service de gestion du personnel d une entreprise désire s équiper d un outil

Plus en détail

Session S12 Les bases de l optimisation SQL avec DB2 for i

Session S12 Les bases de l optimisation SQL avec DB2 for i Session S12 Les bases de l optimisation SQL avec DB2 for i C. GRIERE cgriere@fr.ibm.com STG Lab Services IBM i Avril 2012 Les fleurs et les requêtes SQL Lorsque l on veut planter de nouvelles fleurs dans

Plus en détail

Interrogation de bases de données avec le langage SQL

Interrogation de bases de données avec le langage SQL Web dynamique avec PHP et MySQL Interrogation de bases de données avec le langage SQL C. Sirangelo & F. Tort Interroger une base avec SQL Interroger une base de données: extraire des données de la base

Plus en détail

DROP TABLE Aeroport CASCADE CONSTRAINTS; CREATE TABLE Aeroport ( VARCHAR(60) NOT NULL, CONSTRAINT PK_aeroport primary key (codeaeroport) );

DROP TABLE Aeroport CASCADE CONSTRAINTS; CREATE TABLE Aeroport ( VARCHAR(60) NOT NULL, CONSTRAINT PK_aeroport primary key (codeaeroport) ); / Fichier: tp1-2.sql Nom: Martin Rancourt - Matricule: 14059412 Nom: Vincent Ribou - Matricule: 14042001 Description : Travail pratique #1 partie 2. Base de données qui permet de gérer les vols d une compagnie

Plus en détail

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

TD : 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étail

1 Création et manipulation d une base de données

1 Création et manipulation d une base de données Université Paris 13 TP Base de données Année 2013-2014 Institut Galilée SQL et ORACLE LI3 1 Création et manipulation d une base de données ans ce TP, nous allons créer la base de données de l exercice

Plus en détail

Cours de Bases de Données Avancées 2006-2007 Groupe cinema, Rapport 4

Cours de Bases de Données Avancées 2006-2007 Groupe cinema, Rapport 4 1 Annexes Avec ce rapport il faut rendre en annexe le script SQL corrigé qui permet de créer la base de données selon votre modèle relationnel ainsi que de la peupler avec un nombre de tuples suffisant.

Plus en détail

Apprendre le langage SQL - Le DML - 1 / 41 - Apprendre le langage SQL par l exemple Partie 2 : le DML

Apprendre le langage SQL - Le DML - 1 / 41 - Apprendre le langage SQL par l exemple Partie 2 : le DML Apprendre le langage SQL - Le DML - 1 / 41 - Apprendre le langage SQL par l exemple Partie 2 : le DML Ce document est publié sous licence Creative Commons CC-by-nc-nd. Il ne peut ni être modifié, ni faire

Plus en détail

Devoir Data WareHouse

Devoir Data WareHouse Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE

Plus en détail

Cours 7 : Langage de définition, manipulation et contrôle des données

Cours 7 : Langage de définition, manipulation et contrôle des données Cours 7 : Langage de définition, manipulation et contrôle des données Objets d une base de données Dans un schéma Tables, vues Index, clusters, séquences, synonymes Packages, procédures, fonctions, déclencheurs

Plus en détail

Instructions SQL. Première partie : Langage de description et de gestion des données

Instructions SQL. Première partie : Langage de description et de gestion des données Instructions SQL Première partie : Langage de description et de gestion des données Quelques instructions et leur syntaxe 1. Introduction Trois principales catégories d instructions. Instructions de création

Plus en détail

ISC21-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 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étail

Compétences Business Objects - 2014

Compé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étail

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

Partie 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étail

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. 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étail

Pour les débutants. langage de manipulation des données

Pour les débutants. langage de manipulation des données Pour les débutants SQL : langage de manipulation des données Les bases de données sont très utilisées dans les applications Web. La création, l interrogation et la manipulation des données de la base sont

Plus en détail

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

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours 13 : Organisation d une base de données, ou comment soulever (un peu) le voile Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Les clusters de table

Plus en détail

Systèmes de Gestion de Bases de Données

Systè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étail

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

14/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étail

PRESENTATION. Document1 Serge GUERINET Page 1

PRESENTATION. Document1 Serge GUERINET Page 1 PRESENTATION Les domaines couverts par la série STG sont tous des pourvoyeurs ou exploitants des bases de données. Que l'on gère la relation aux clients, le suivi de l'activité financière, la comptabilité

Plus en détail

Gestion des utilisateurs et de leurs droits

Gestion des utilisateurs et de leurs droits Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE

Plus en détail

Apprendre le langage SQL - Le DML - 1 / 21 - Apprendre le langage SQL par l exemple Partie 2 : le DML

Apprendre le langage SQL - Le DML - 1 / 21 - Apprendre le langage SQL par l exemple Partie 2 : le DML Apprendre le langage SQL - Le DML - 1 / 21 - Apprendre le langage SQL par l exemple Partie 2 : le DML Ce document est publié sous licence Creative Commons CC-by-nc-nd. Il ne peut ni être modifié, ni faire

Plus en détail

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Ce projet comporte trois parties sur les thèmes suivants : création de base de donnée, requêtes SQL, mise en œuvre

Plus en détail

Administration de Bases de Données : Optimisation

Administration de Bases de Données : Optimisation Administration de Bases de Données : Optimisation FIP 2 année Exercices CNAM Paris Nicolas.Travers(at) cnam.fr Table des matières 1 Stockagedans unsgbd 3 1.1 Stockage.............................................

Plus en détail

Bases de données et sites WEB Cours 3 : SQL3 Langage

Bases de données et sites WEB Cours 3 : SQL3 Langage Bases de données et sites WEB Cours 3 : SQL3 Langage 1 Plan Références Requêtes simples Expressions de chemin Appels de fonctions et d opérateurs Création d instances Opérations sur les collections 2 Références

Plus en détail

Optimisation de requêtes. I3009 Licence d informatique 2015/2016. Traitement des requêtes

Optimisation de requêtes. I3009 Licence d informatique 2015/2016. Traitement des requêtes Optimisation de requêtes I3009 Licence d informatique 2015/2016 Cours 5 - Optimisation de requêtes Stéphane.Gançarski Stephane.Gancarski@lip6.fr Traitement et exécution de requêtes Implémentation des opérateurs

Plus en détail

Cours Web n o 7 MySQL et PHP

Cours Web n o 7 MySQL et PHP Introduction aux bases de données Cours Web n o 7 MySQL et PHP Sandrine-Dominique Gouraud (gouraud@lri.fr) Pierre Senellart (pierre@senellart.com) Semaine du 7 novembre 2005 S.-D. Gouraud, P. Senellart

Plus en détail

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

Cours 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étail

Cours 4. Gestion de la performance. DBA - Maîtrise ASR - Université Evry

Cours 4. Gestion de la performance. DBA - Maîtrise ASR - Université Evry Cours 4 Gestion de la performance 1 Performance? De quelles performance parle-t on? Quels sont les éléments actifs et quels sont leurs rôles respectifs? Quels sont les mesures de performance significatives

Plus en détail

Olivier Mondet http://unidentified-one.net

Olivier 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étail

Auto-évaluation Oracle: cours de base

Auto-évaluation Oracle: cours de base Auto-évaluation Oracle: cours de base Document: F0475Test.fm 14/01/2008 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION ORACLE: COURS DE

Plus en détail

SQL Serveur 2012+ Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

SQL Serveur 2012+ Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise SQL Serveur 2012+ Programme de formation France Belgique Suisse - Canada Microsoft Partner Formez vos salariés pour optimiser la productivité de votre entreprise Dernière mise à jour le : Avril 2014 Des

Plus en détail

Bases de données. Chapitre 1. 1.1 Généralité sur les bases de données. 1.2 Avec sqlite3. 1.1.1 Le langage SQL et les bases de données

Bases de données. Chapitre 1. 1.1 Généralité sur les bases de données. 1.2 Avec sqlite3. 1.1.1 Le langage SQL et les bases de données Chapitre 1 Bases de données 1.1 Généralité sur les bases de données 1.1.1 Le langage SQL et les bases de données La base de données (BDD) est un système qui enregistre des informations. Ces informations

Plus en détail

Module Com231A - Web et Bases de Données Notion 3 : SQL

Module Com231A - Web et Bases de Données Notion 3 : SQL Module Com231A - Web et Bases de Données Notion 3 : SQL Qu est ce qu une base de données? Introduction Une base de données est un ensemble d au moins un tableau contenant des données. Exemple : une base

Plus en détail

Plan d Exécution Graphique pour des Requêtes SQL Simples

Plan d Exécution Graphique pour des Requêtes SQL Simples Plan d Exécution Graphique pour des Requêtes SQL Simples Cet article est paru initialement le 16 décembre 2008 sur le magazine en ligne Simple-Talk http://www.simpletalk.com/sql/performance/graphical-execution-plans-for-simple-sql-queries/

Plus en détail

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

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]

Plus en détail

TP3 : Creation de tables 1 seance

TP3 : 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étail

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

Cours 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étail

FileMaker 13. Guide de référence SQL

FileMaker 13. Guide de référence SQL FileMaker 13 Guide de référence SQL 2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et Bento sont des marques commerciales de

Plus en détail

Générateur d Etats Report Builder Report Maker

Générateur d Etats Report Builder Report Maker REPORT BUILDER ET REPORT MAKER Générateur d Etats Report Builder Report Maker Prise en main 22/05/2013 1 / 49 1 Report Builder Prise en main... 4 Creer un nouveau modèle... 4 Présentation... 5 1.1.1 Onglet

Plus en détail

16H Cours / 18H TD / 20H TP

16H 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étail

Chapitre 08 Les requêtes d'interrogation en langage SQL

Chapitre 08 Les requêtes d'interrogation en langage SQL Chapitre 08 Les requêtes d'interrogation en langage SQL Introduction L'étude des requêtes d'interrogation de la base de données est séparée en deux parties : - Une première partie permet de revoir le langage

Plus en détail

Partie I du TD 1 au TD 5. Bases de données et MySQL -

Partie I du TD 1 au TD 5. Bases de données et MySQL - Système d information http://www.agroparistech.fr/systeme-d-information.html Partie I du TD 1 au TD 5 - Bases de données et MySQL - Liliana Ibănescu liliana.ibanescu@agroparistech.fr UFR d informatique

Plus en détail

TP5 MySQL requêtes avancées

TP5 MySQL requêtes avancées Master 1 BBSG TP5 MySQL requêtes avancées Bases de Données Exercice 1 : Par l'intermédiaire de PHPMyAdmin ou du client mysql, connectez-vous sur votre base de données. mysql -h dbs-perso.luminy.univmed.fr

Plus en détail

A QUOI SERVENT LES BASES DE DONNÉES?

A 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étail

Les 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. 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étail

Création et Gestion des tables

Cré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étail

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

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 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étail

A QUOI SERVENT LES BASES DE DONNÉES?

A 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étail

Considérons une partie d un modèle conceptuel de données avec les schémas d entités. Figure 1: Une partie du modèle conceptuel de données

Considérons une partie d un modèle conceptuel de données avec les schémas d entités. Figure 1: Une partie du modèle conceptuel de données Considérons une partie d un modèle conceptuel de données avec les schémas d entités suivants: EMP(EmpNo, Enom, Job, DirNo, Sal, Prime) DEPT(DeptNo, Dnom, Adr) Où EmpNo est la clé primaire de EMP et DeptNo

Plus en détail

Introduction aux SGBDR

Introduction aux SGBDR 1 Introduction aux SGBDR Pour optimiser une base Oracle, il est important d avoir une idée de la manière dont elle fonctionne. La connaissance des éléments sous-jacents à son fonctionnement permet de mieux

Plus en détail

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

TD n 10 : Ma première Base de Données TD n 10 : Ma première Base de Données 4 heures Rédigé par Pascal Delahaye 11 mars 2015 Le but de ce TD est de découvrirles principales fonctions d OpenOffice Base, le systèmede gestion de bases de données

Plus en détail

MODE OPERATOIRE OPENOFFICE BASE

MODE OPERATOIRE OPENOFFICE BASE MODE OPERATOIRE OPENOFFICE BASE Openoffice Base est un SGBDR : Système de Gestion de Base de Données Relationnelle. L un des principaux atouts de ce logiciel est de pouvoir gérer de façon efficace et rapide

Plus en détail

Paginer les données côté serveur, mettre en cache côté client

Paginer les données côté serveur, mettre en cache côté client Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule

Plus en détail

Présentation Windows Azure Hadoop Big Data - BI

Présentation Windows Azure Hadoop Big Data - BI Présentation Windows Azure Hadoop Big Data - BI Sommaire 1. Architecture Hadoop dans Windows Azure... 3 2. Requête Hive avec Hadoop dans Windows Azure... 4 3. Cas d études... 5 3.1 Vue : Administrateur...

Plus en détail

Memento MYSQL LINUX. Pour installer le serveur Mysql. Installer les paquets suivants :

Memento MYSQL LINUX. Pour installer le serveur Mysql. Installer les paquets suivants : Memento MYSQL LINUX Pour installer le serveur Mysql Installer les paquets suivants : Mysql-server (moteur de bases de données) Apache2 (serveur web si besoin) Php5 (langage de programmation permettant

Plus en détail

Optimisations des SGBDR. Étude de cas : MySQL

Optimisations 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étail

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

Plus en détail

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

1 Modélisation d une base de données pour une société de bourse IN306 : Corrigé SID Christophe Garion 18 octobre 2010 Ce document est un corrigé succinct de l examen du module IN306. 1 Modélisation d une base de données pour une société de bourse Une

Plus en détail

1 Introduction et installation

1 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étail

Du 10 Fév. au 14 Mars 2014

Du 10 Fév. au 14 Mars 2014 Interconnexion des Sites - Design et Implémentation des Réseaux informatiques - Sécurité et Audit des systèmes - IT CATALOGUE DE FORMATION SIS 2014 1 FORMATION ORACLE 10G 11G 10 FEV 2014 DOUALA CAMEROUN

Plus en détail

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

Langage 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étail

Éléments pour l'optimisation des data warehouses

Éléments pour l'optimisation des data warehouses Éléments pour l'optimisation des data warehouses Data warehouse http://dwh.crzt.fr Stéphane Crozat 28 novembre 2014 Table des matières Introduction 3 I - Optimisation de requêtes sous Oracle 9i 4 1. Problématique...

Plus en détail

Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML

Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML MariaDB : https://mariadb.org/ Site officiel MySQL : http://www-fr.mysql.com/ Zone pour les développeurs : http://dev.mysql.com/

Plus en détail

Corrigés détaillés des exercices

Corrigés détaillés des exercices Corrigés détaillés des exercices Diagramme des tables objet La figure suivante vous aidera dans la compréhension des manipulations des objets de la base. Client_type Client num nom adresse {telephone_vry}

Plus en détail

JDBC et objet-relationnel

JDBC et objet-relationnel Types de données de SQL3 JDBC et objet-relationnel Université de Nice - Sophia Antipolis Version 1.6.4 5/11/11 Richard Grin JDBC supporte les types suivants de SQL3 qui sont des ouvertures vers le relationnelobjet

Plus en détail

MySQL / SQL EXEMPLES

MySQL / 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étail

TP Contraintes - Triggers

TP 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étail

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Partie 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étail

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

Le 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étail

Requêtes particulières

Requêtes particulières SUPPORT Trucs et astuces Requêtes particulières Le contenu de ce document et tous les programmes et documents associés sont protégés et ne peuvent être reproduits sans l'autorisation écrite de Lynxx Business

Plus en détail

SQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0

SQL 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étail

CREATION WEB DYNAMIQUE

CREATION 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étail

BD parallèles et réparties

BD parallèles et réparties LOG660 - Bases de données de haute performance BD parallèles et réparties Département de génie logiciel et des TI BD parallèles vs réparties BD réparties Les données se trouvent sur plusieurs sites (noeuds)

Plus en détail

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques Plan de formation : Certification OCA Oracle 11g Description Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques industriels les plus avancés. Cette formation permettra

Plus en détail

Cours: Les Jointures 1

Cours: Les Jointures 1 Bases de Données Avancées Module A IUT Lumière, License CE-STAT 2006-2007 Pierre Parrend Cours: Les Jointures 1 Plan Table of Contents Principe...1 Example...1 Types de Jointures...2 Définitions et examples...2

Plus en détail