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
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
1 / 4 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !