Programme du cours

5 jours (35 H) | 4-DB701 Renseignez-vousCette formation vous intéresse ? 
 

Objectifs

Acquérir l’autonomie dans la pratique de DB2.

Participants / Pré-requis

Chefs de projet, analystes, analystes-programmeurs, toute personne concernée par les différentes phases de développement d’une application DB2.

Connaissances générales sur MVS et VSAM, connaissance de Cobol, utilisation de TSO/ISPF.

Contenu

Présentation

Bases de données

  • Définition
  • Fonctions et objectifs d’un SGBD
  • Architecture sur 3 niveaux
  • Les différents modèles

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

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

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

  • 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
  • Groupage
    • Clause GROUP BY
    • clause HAVING

La clause UNION, UNION ALL

La clause CASE

  • Simple when clause
  • Searched when clause

Nested Table

Sous-requêtes simples

Sous-requêtes corrélées

Jointure

  • Principes des jointures
  • Jointure interne
    • principes
    • codification : ancienne et nouvelle syntaxe
  • 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

UPDATE

UDATE et DELETE auto-référencés

Techniques de programmation

Syntaxe générale des ordres

Les variables hôtes

L’instruction SET

Les variables indicateur

  • Gestion en mise à jour

L’ordre Declare Table

La zone SQLCA

L’ordre WHENEVER

La gestion du curseur

  • déclaration
  • ouverture
  • lecture
  • fermeture

Mise à jour avec et sans curseur

Les curseurs SCROLLABLE

Les curseurs SENSITIVE

Clause For Read Only

Exemple de programme Cobol

Mise en œuvre d’un programme

Principe général de la mise en œuvre d’un programme

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

Autorisations liées aux packages et plans

Propriétaire et qualifieur

Commande REBIND plan, package

Suppression d’un plan, package

Exécution d’un programme en environnement TSO batch

Programmes de service et chargement

Programme DSNTEP2

Programme DSNTIAD

Programme DSNTIAUL

Utilitaire UNLOAD

L’utilitaire LOAD

  • Fonctionnalités, paramètres, option INTO TABLE

Chemins d’acces

Rôle De L’optimiseur

Chemins D’accès

Tablespace Scan,Index Scan

Multiple Access Index Path

Sequential Prefetch, List Sequential Prefetch, Dynamic Prefetch

Partition Scan

Jointure

Nested Loop

Merge Scan

Hybrid Join

Parallelisme

Sous-Requetes

Traitement Des Vues

Les predicats

Caractéristiques Des Prédicats

Tableau Des Prédicats

Evaluation Des Prédicats

Prédicats De Jointure

Prédicat Sur Clause On

Prédicats Composes

Fonctions Scalaires

Colonnes Varchar

Fonctions Colonnes Min Et Max

Evaluation Fonctions Colonnes

Prédicat Avec In Liste De Valeurs

Prédicat Avec In Sous-Requête

Transformation Des Sous-Requêtes

Transformation De Not In En Not Exists

Evaluation Etape 1 Vs Etape 2

EXPLAIN et PLAN_TABLE

Rôle De L’explain

Syntaxe De L’explain

Structure Plan_Table

Lecture Sur Plan_Table

Accès A Une Table

Traitements Des Jointures Internes

Exemples D’Explain

Jointure De 2 Tables

Jointure De 4 Tables

Transformation De Sous-Requête Simple

Accès Index-Only

Dsn_Statemnt_Table

 
Cette formation vous intéresse ? Renseignez-vous