Oracle 9i 10g
SQLP
Oracle Database 9i 10g : Les fondamentaux des langages
SQL et PL/SQL
Introduction
- Enumérer les principales fonctionnalités d'Oracle Database 10g
- Décrire les concepts de base de données relationnelle et
relationnelle objet
- Passer en revue le cycle de développement d'un système
- Décrire différents moyens de stocker des données
- Montrer comment plusieurs tables peuvent être liées entre elles
- Dresser la liste des termes et des propriétés des bases de
données relationnelles
- Décrire le mode de communication entre SQL et la base de données
- Définir un système de gestion de base de données relationnelle
(SGBDR)
Extraire des données à l'aide de l'instruction SQL SELECT
- Définir les termes liés aux projections, aux sélections et aux
jointures
- Sélectionner toutes les colonnes d'une table à l'aide d'une
notation générique
- Enoncer des règles et des conseils simples pour l'écriture
d'instructions SQL
- Ecrire une instruction contenant des opérateurs arithmétiques
- Utiliser des alias pour personnaliser les en-têtes de colonne
- Créer une expression de type caractère avec l'opérateur de
concaténation
- Utiliser l'opérateur de délimitation q pour contrôler les
chaînes de texte contenant des apostrophes
- Supprimer les lignes en double à l'aide du mot-clé DISTINCT
Restreindre et trier les données
- Limiter le nombre de lignes à l'aide d'une sélection
- Enumérer les principales conditions de comparaison
- Utiliser la condition LIKE pour comparer des valeurs littérales
- Utiliser les conditions logiques AND, OR et NOT
- Utiliser plusieurs conditions dans la clause WHERE
- Décrire les règles déterminant la priorité des conditions
décrites dans ce chapitre
- Trier les lignes à l'aide de la clause ORDER BY
- Utiliser l'esperluette d'interprétation dans iSQL*Plus pour
restreindre et trier les résultats au moment de l'exécution
Utiliser des fonctions monolignes pour personnaliser les états
- Montrer les différences entre les fonctions SQL monolignes et
multilignes
- Distinguer les deux types de fonction de chaîne de caractères :
manipulation de casse et manipulation de caractères
- Expliquer les fonctions numériques ROUND, TRUNC et MOD
- Exposer les règles d'application des opérateurs arithmétiques
aux dates
- Utiliser les opérateurs arithmétiques avec des dates dans la
clause SELECT
- Expliquer les fonctions DATE suivantes : MONTHS_BETWEEN,
ADD_MONTHS, NEXT_DAY, LAST_DAY, ROUND et TRUNC
- Expliquer la conversion implicite et explicite
- Imbriquer des fonctions pour effectuer plusieurs tâches dans une
seule instruction
Créer des états /à partir de données agrégées à l'aide des fonctions
de groupe
- Classer les fonctions de groupe en catégories
- Utiliser les fonctions AVG, SUM, MAX, MIN et COUNT dans une
interrogation
- Utiliser le mot-clé DISTINCT avec les fonctions de groupe
- Expliquer la gestion des valeurs NULL avec les fonctions de
groupe
- Créer des groupes de données à l'aide de la clause GROUP BY
- Regrouper des données selon plusieurs colonnes
- Eviter les interrogations non autorisées grâce aux fonctions de
groupe
- Exclure des groupes de données avec la clause HAVING
Afficher des données issues de plusieurs tables
- Utiliser des alias de table pour raccourcir le code et
identifier explicitement les colonnes issues de plusieurs tables
- Exécuter une instruction SQL CROSS JOIN pour obtenir un produit
cartésien
- Utiliser la clause NATURAL JOIN pour extraire des données de
plusieurs tables dont les colonnes ont des noms identiques
- Créer une jointure avec la clause USING pour identifier les
colonnes dans différentes tables
- Utiliser la clause ON pour préciser des conditions arbitraires
ou indiquer les colonnes à joindre
- Créer une jointure à 3 liens avec la clause ON pour extraire des
informations de 3 tables
- Les types de jointure externe LEFT, RIGHT et FULL
Utiliser des sous-interrogations pour résoudre des interrogations
- Utiliser une sous-interrogation pour résoudre un problème
- Identifier l'emplacement des sous-interrogations dans une
instruction SELECT
- Décrire les différents types de sous-interrogation (monoligne,
multiligne)
- Afficher les opérateurs d'une sous-interrogation monoligne
- Utiliser les fonctions de groupe dans une sous-interrogation
- Identifier les instructions non autorisées avec des
sous-interrogations
- Afficher les opérateurs d'une sous-interrogation multiligne
- Expliquer le traitement des valeurs NULL dans les
sous-interrogations
Utiliser les opérateurs SET
- Utiliser l'opérateur UNION pour renvoyer toutes les lignes
issues de plusieurs tables en évitant les lignes en double
- Utiliser l'opérateur UNION ALL pour renvoyer toutes les lignes
de plusieurs tables (doublons compris)
- Décrire l'opérateur INTERSECT
- Utiliser l'opérateur INTERSECT
- Décrire l'opérateur MINUS
- Utiliser l'opérateur MINUS
- Enoncer les consignes d'utilisation de l'opérateur SET
- Ordonner les résultats obtenus avec l'opérateur UNION
Manipuler les données
- Ecrire des instructions INSERT pour ajouter des lignes à une
table
- Copier des lignes issues d'une autre table
- Créer des instructions UPDATE pour modifier les données d'une
table
- Générer des instructions DELETE pour supprimer des lignes dans
une table
- Utiliser un script pour manipuler les données
- Enregistrer et annuler les modifications apportées à une table
via des traitements de transactions (COMMIT, ROLLBACK et SAVEPOINT)
- Montrer le fonctionnement de la cohérence en lecture
- Décrire l'instruction TRUNCATE
Utiliser des instructions LDD (Langage de définition de données)
pour créer et gérer des tables
- Enumérer les principaux objets de la base de données
- Afficher la syntaxe de base permettant de créer une table
- Présenter le concept de schéma
- Expliquer les différents types de contrainte
- Afficher les exceptions résultant de la violation des
contraintes avec des instructions LMD
- Créer une table avec une sous-interrogation
- Décrire la fonctionnalité ALTER TABLE
- Supprimer une table avec l'instruction DROP
Créer d'autres objets de schéma
- Identifier et comparer les vues simples et complexes
- Créer une vue
- Extraire des données d'une vue
- Décrire une vue en lecture seule
- Enumérer les règles relatives aux manipulations LMD sur des vues
complexes
- Créer une séquence
- Enumérer les règles élémentaires déterminant la nécessité de
créer un index
- Créer un synonyme
Gérer des objets à l'aide de vues du dictionnaire de données
- Décrire la structure de chaque vue du dictionnaire
- Indiquer la fonction de chaque vue du dictionnaire
- Ecrire des interrogations pour extraire des informations à
partir des vues du dictionnaire sur les objets du schéma
- Utiliser la commande COMMENT pour documenter des objets
Introduction à PL/SQL
- Qu'est-ce que PL/SQL ?
- Environnement PL/SQL
- Avantages de PL/SQL
- Vue d'ensemble des types de bloc PL/SQL
- Créer et exécuter un bloc anonyme simple
- Générer des résultats à partir d'un bloc PL/SQL
- iSQL*Plus en tant qu'environnement de programmation PL/SQL
Déclarer des variables PL/SQL
- Identifier les différents types d'identificateurs dans un
sous-programme PL/SQL
- Déclarer des variables PL/SQL
- Initialisation des variables et mots-clés
- Types de données scalaires
- Utiliser l'attribut %TYPE
- Déclarer des identificateurs booléens
- Variables attachées (bind variables)
- Types de données composites
Ecrire des instructions exécutables
- Décrire les règles syntaxiques élémentaires des blocs
- Utiliser des littéraux dans PL/SQL
- Utiliser des blocs imbriqués en tant qu'instructions
- Référencer la valeur d'un identificateur dans un bloc imbriqué
- Qualifier un identificateur avec une étiquette
- Utiliser des opérateurs dans PL/SQL
- Commenter le code pour le rendre plus lisible
Interaction avec le serveur Oracle
- Identifier les instructions SQL pouvant être utilisées dans
PL/SQL
- Inclure des instructions SELECT dans PL/SQL
- Extraire des données dans PL/SQL avec l'instruction SELECT
- Manipuler les données du serveur à l'aide de PL/SQL
- Concept de curseur SQL
Ecrire des structures de contrôle
- Contrôler le flux d'exécution
- Traitement conditionnel à l'aide d'instructions IF
- Instructions CASE de traitement conditionnel
- Créer des conditions booléennes avec des opérateurs logiques
- Utiliser le contrôle d'itération avec les instructions en boucle
- Contrôler l'entrée dans une boucle à l'aide de WHILE Loop
- Contrôler les itérations d'une boucle à l'aide de FOR Loop
- Enoncer les consignes relatives à l'utilisation des boucles
Utiliser des types de données composites
- Découvrir les types de données composites des enregistrements et
des tables PL/SQL
- Utiliser des enregistrements PL/SQL pour contenir plusieurs
valeurs de types différents
- Utiliser l'attribut %ROWTYPE pour copier une définition de ligne
à partir d'une table
- Insertion et mise à jour d'enregistrements PL/SQL
- Utiliser des tables INDEX BY pour contenir plusieurs valeurs de
même type de données
- Créer une table INDEX BY
- Utiliser des méthodes de table INDEX BY pour manipuler des
tables
- Utiliser la table d'enregistrements INDEX BY pour stocker des
valeurs de lignes et de colonnes
Utiliser des curseurs explicites
- Déclarer le curseur
- Contrôler les curseurs explicites
- Ouvrir le curseur
- Extraire des données à partir du curseur
- Fermer le curseur
- Curseurs et enregistrements
- Boucles FOR de curseur
- Augmenter la flexibilité des curseurs à l'aide de paramètres
Traitement des exceptions
- Traitement des exceptions avec PL/SQL
- Expliquer les différents types d'exception
- Intercepter les exceptions
- Exceptions prédéfinies
- Intercepter des erreurs non prédéfinies du serveur Oracle
- Intercepter des exceptions définies par l'utilisateur
- Propager des exceptions
- Utiliser la fonction RAISE_APPLICATION_ERROR pour signaler les
erreurs aux applications
Créer des procédures et des fonctions stockées
- Présentation des procédures et des fonctions stockées
- Différences entre blocs anonymes et sous-programmes
- Afficher le code CREATE OR REPLACE PROCEDURE et CREATE OR
REPLACE FUNCTION
- Créer une procédure et une fonction simples
- Appeler une procédure et une fonction avec des blocs anonymes
- Transmettre un paramètre à la fonction
- Appeler une fonct
