Télécharger ce plan de cours au format PDF
Transcription
Télécharger ce plan de cours au format PDF
DB2 – Techniques de bases pour développeurs 4-DB701 Base : 5 jours (35h) Moyens de la formation : Formateur expert du domaine - 1 ordinateur, 1 support de cours version papier ou numérique, un bloc note et stylo par personne - vidéo projecteur - tableau blanc. Modalités pédagogiques : Présentation des concepts, démonstration, exécution, synthèse, exercices d'assimilation. Validation : Questionnaire final de validation des acquis - report du résultat sur l'attestation de stage. Type d'action : Acquisition des connaissances. Suivi : Feuille d'émargement signée par 1/2 journée - évaluation de satisfaction stagiaire - évaluation des acquis - attestation de stage. Objectifs Acquérir l’autonomie dans la pratique de DB2. Pré-requis Connaissances générales sur MVS et VSAM, connaissance de Cobol, utilisation de TSO/ISPF. Programme de cours Présentation Bases de données • • • • Définition Fonctions et objectifs d'un SGBD Architecture sur 3 niveaux Les différents modèles Principales caractéristiques • • • • • • • Fonctionnalités gérées DB2 et le modèle relationnel Accès aux données L’optimiseur DB2 dans l'environnement OS/390 DB2I, SPUFI, QMF Famille de produits IBM et autres Le modèle relationnel • • • • • Domaine, Relation, Attribut Caractéristiques d'une BD relationnelle L'algèbre relationnelle : les opérateurs Clés primaires, étrangères, règles de mise à jour Contraintes d'intégrité Méthodologie Le modèle entité-association • • • • • • • Recensement des données Propriété et entité Détermination des identifiants Les associations Cardinalité d'une association Dépendance fonctionnelle Entités spatio-temporelles Normalisation • • • • Objectifs Les trois premières formes normales et la BCNF Quatrième forme normale Cinquième forme normale Phases de constitution d'un modèle conceptuel • Algorithme d'élaboration • Etude par le langage naturel • Etude par les dépendances fonctionnelles entre les propriétés • Etude par le recensement des identifiants • Etude par le recensement des entités Architecture et Concepts DB2 Les objets DB2 • • • • • • • • • • • • • • • • • Stogroup Database Tablespace simple, segmenté, partitionné Table Index Schéma, UDT, UDF Trigger Procédures stockées Format interne des données Page, Bufferpool Organisation physique des objets Vues Alias et Synonyme Type de données Règles de nom d’objets Registres Correspondance types d’objets Le catalogue DB2 • Présentation du catalogue et du directory • Les tables du catalogue • Mise à jour du catalogue et exemples de requêtes • Le directory • Base de travail et base par défaut Autorisations • Notions de privilèges et principes de gestion • Identifiant des utilisateurs - Authid primaire - Authid secondaire - Current Sqlid • Octroi et révocation d'un privilège - Les ordres SQL associés - Les différents privilèges - Les autorités administratives • Privilèges composés, privilège set SQL : Langage de manipulation UPDATE UDATE et DELETE auto-référencés Techniques de programmation Syntaxe générale des ordres • Accès à une table - Syntaxe de l'ordre SELECT Sélection simple Projection, élimination des doubles Conditions simples, conditions multiples Les clauses IN, BETWEEN, LIKE Gestion des valeurs NULL Expressions arithmétiques Clause AS La clause ORDER BY Les fonctions fonctions scalaires fonctions colonnes Les variables hôtes L'instruction SET Les variables indicateur • Gestion en mise à jour L'ordre Declare Table La zone SQLCA L’ordre WHENEVER • Groupage - Clause GROUP BY - clause HAVING La clause UNION, UNION ALL La gestion du curseur • • • • déclaration ouverture lecture fermeture La clause CASE • Simple when clause • Searched when clause Mise à jour avec et sans curseur Les curseurs SCROLLABLE Nested Table Les curseurs SENSITIVE Sous-requêtes simples Clause For Read Only Sous-requêtes corrélées Exemple de programme Cobol Jointure • Principes des jointures • Jointure interne - principes - codification : ancienne et nouvelle syntaxe Mise en œuvre d'un programme Principe général de la mise en œuvre d'un programme • Jointure sur deux tables - jointure sur plusieurs tables - jointure d'une table sur elle-même • jointure sur deux tables - jointure sur plusieurs tables - prédicats locaux et conditions de jointure Jointure externe • principes : jointure left et full - codification - Ordres de mise à jour • INSERT - Une ligne - Plusieurs lignes DELETE Dclgen • Paramètres • Ordre INCLUDE associé Précompilation : génération du DBRM Compilation et link-edit • JCL associé Les packages • • • • • principes généraux des plans et packages gestion du consistency token package et collection identifiant d’un package gestion de listes de packages • commande BIND Package Construction du plan • gestion des plans avec liste de packages • commande BIND Plan Traitement Des Vues Les predicats Caractéristiques Des Prédicats Autorisations liées aux packages et plans Tableau Des Prédicats Propriétaire et qualifieur Evaluation Des Prédicats Commande REBIND plan, package Prédicats De Jointure Suppression d'un plan, package Prédicat Sur Clause On Exécution d'un programme en environnement TSO batch Prédicats Composes Fonctions Scalaires Programmes de service et chargement Colonnes Varchar Programme DSNTEP2 Fonctions Colonnes Min Et Max Programme DSNTIAD Evaluation Fonctions Colonnes Programme DSNTIAUL Prédicat Avec In Liste De Valeurs Utilitaire UNLOAD Prédicat Avec In Sous-Requête L’utilitaire LOAD • Fonctionnalités, paramètres, option INTO TABLE Transformation Des Sous-Requêtes Chemins d'acces Transformation De Not In En Not Exists Rôle De L'optimiseur Evaluation Etape 1 Vs Etape 2 Chemins D’accès EXPLAIN et PLAN_TABLE Tablespace Scan,Index Scan Rôle De L’explain Multiple Access Index Path Syntaxe De L’explain Sequential Prefetch, List Sequential Prefetch, Dynamic Prefetch Structure Plan_Table Lecture Sur Plan_Table Partition Scan Accès A Une Table Jointure Traitements Des Jointures Internes Nested Loop Exemples D’Explain Merge Scan Jointure De 2 Tables Hybrid Join Jointure De 4 Tables Parallelisme Transformation De Sous-Requête Simple Sous-Requetes Accès Index-Only Dsn_Statemnt_Table