Ce cours s’adresse à toute personne voulant acquérir une base solide sur Oracle utile pour la suite de leur carrière que ce soit en tant que développeurs ou en tant qu’administrateurs. le cours requiert une connaissance de la programmation (pour la partie PL/SQL) et de savoir utiliser un système d’exploitation (Windows ou Unix).
Plan détaillé
Introduction
- Serveur Oracle.
- Modèle relationnel.
- Introduction au langage SQL.
- Outils : sqlplus, SQL Developer.
- Création de tables.
- Introduction aux instructions de mise à jour.
- Utilisation des séquences.
- Introduction à l’interrogation(SELECT).
- Introduction aux transactions.
- Types basiques et constantes dans Oracle.
Travaux pratiques : utilisation des outils, instructions de mise à jour, séquences, instructions SELECT simples.
Interrogation des données
- Tri et suppression de doublons. OFFSET et FETCH.
- Alias de colonnes, alias de tables, préfixes, opérateurs.
- Globalisation (National Language Support).
- Utilisation des fonctions.
- Conversion des types.
- NULL dans Oracle.
- Agrégats.
- Groupement.
- Jointure et produit cartésien.
- Requêtes imbriquées: opérateurs IN et EXISTS.
- Opérateurs ensemblistes.
- Conclusion.
Travaux pratiques: écriture d’instructions SQL concernant tous les sujets traités.
Introduction à PL/SQL
- Survol du langage.
- Premier contact avec le langage.
- Introduction syntaxique à PL/SQL.
- Conversion des types.
- Interaction avec la base de données, curseurs.
- Définition des sous-programmes.
- Paramètres de sous-programmes.
- Sous-programmes stockés.
- Packages.
- Compléments aux traitements stockés.
- Introduction au traitement des erreurs.
- Déclenchement d’erreurs.
Travaux pratiques : déclaration des variables, curseurs, sous-programmes stockés, packages.gestion des erreurs.
Triggers LMD dans Oracle
- Introduction aux triggers dans Oracle.
- Triggers LMD
- Triggers de niveau instruction.
- Triggers de niveau ligne.
- Restrictions, traitement différencié, activation/désactivation.
Travaux pratiques : trigger au niveau ligne, trigger au niveau instruction.
Architecture et objets d’une base de données
- Création et suppression de tables.
- Modification de la définition d’une table.
- Utilisation des vues.
- Utilisation des synonymes.
- Dictionnaire de données.
- Modèle de stockage: tablespaces, fichiers de données, segments et extents.
- Index.
- Tables globales temporaires.
Travaux pratiques: valeurs par défaut des colonnes, ajout de colonnes et de contraintes à une table, utilisation des vues en mise à jour, utilisation de l’espace dans les tablespaces, tables globales temporaires.
Gestion des transactions
- Annulation d’instructions, annulation partielle d’une transaction, segments d’annulation.
- PL/SQL et les transactions.
- Gestion de la concurrence.
- Niveaux d’isolations des transactions concurrentes.
- Verrouillage explicite: select … for update, lock table.
Travaux pratiques: tester le comportement des transactions concurrentes,utilisation des niveaux d’isolation, utilisation du verrouillage explicite.
Sécurité et utilisateurs
- Notion de schéma, rôles et privilèges, notion de profil.
- Privilèges d’objets.
- Privilèges système.
- Gestion des rôles.
- Cas des vues et des traitements stockés.
Travaux pratiques: privilèges d’objet, activation des rôles.
Compléments
- Fichiers d’une base, instance Oracle.
- Oracle Net et configuration du client.
- Présentation d’Oracle Loader, Export/Import Data Pump.