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