loader image

Gate Training

logo-png
Bases de données

Formation SQL pour Oracle

2 Jours

Description de la formation SQL oracle

Le langage SQL (Structured Query Language) est un élément incontournable pour aborder la manipulation des données d’une base ORACLE. Il permet à la fois de générer les données, de les modifier, et de les extraire de la base en utilisant un langage proche de l’anglais quotidien sans véritablement programmer. C’est une des raisons du succès du SQL. Il est également important de comprendre l’origine des données, les liens entre elles, et comment Oracle nous propose d’extraire les données tout en sécurisant et permettant leur accès à plusieurs utilisateurs en même temps.

Objectifs

Objectif opérationnel : 

Savoir générer et modifier les données ORACLE et les extraire de la base en utilisant un langage proche de l’anglais quotidien sans véritablement programmer.

Objectifs pédagogiques : 

  • Comprendre l’origine des données et les liens entre elles (modèle relationnel)
  • Savoir créer des données avec le langage SQL (table)
  • Comprendre l’impact des types de données
  • Savoir mettre à jour les données d’une base Oracle (insert, update, delete) en SQL
  • Savoir extraire les données d’une base ORACLE avec le SQL (select, where, like, …)
  • Savoir écrire des requêtes SQL complexes (jointure, union, tri, …)
  • Comprendre la sécurité des données (grant, revoke)
  • Comprendre la problématique des accès concurrents (verrou)
  • Comprendre le principe de transaction (commit, rollback)

À qui s’adresse cette formation ?

Public :

Développeur, utilisateur d’une base Oracle, utilisateur de progiciel s’appuyant sur Oracle

 

Prérequis :

Connaissance générale en Informatique

 

Contenu du cours SQL oracle

Conception et création d’une base ORACLE

Concevoir une base de donnéesEn quoi consiste la démarche de conception d’une base de données ?
Vocabulaire et concepts (modèles relationnel et conceptuel)
A l’origine le MCD (Modèle Conceptuel de Données)
Règles de passage du MCD au MLD (Modèle Logique de Données)
Exemples de modèle de base mal conçue
La base de données pour le développeur SQLDu MLD au MPD (Modèle Physique de Données)
Que deviennent les relations entre les données (contraintes d’intégrité) ?
Principes des clés primaires et étrangères (primary key, foreign key).
Des données d’applications différentes dans une même base (schémas) ?
Disposer d’informations sur la base (dictionnaire de données)
TRAVAUX PRATIQUES

L’environnement utilisateur

SQL*Plus et SQL DeveloperQue signifie le « Plus » dans SQL*Plus ?
Se connecter à une base Oracle
Quelques problèmes classiques (tnsnames.ora, base arrêtée, listener, …)
Utiliser efficacement le buffer des commandes
Premières commandes SQL
Mise en forme des résultats
Stocker les résultats dans un fichier (spool)
Faire des scripts interactifs (accept, define)
Prise en main de SQL Developer
Retrouver des informations du dictionnaire de données (tables, contraintes, etc.) 
TRAVAUX PRATIQUES

Le langage SQL pour gérer le contenu d’une base

Créer le schéma d’une base de donnéesCréation des tables (create table)
Modification du schéma des tables (alter, drop)
Protéger la cohérence des données avec les contraintes d’intégrité (primary key, foreign key, uniq)
Les contraintes de valeurs (not null, check)
Règles de nommage des contraintes d’intégrité
Retrouver les informations dans le dictionnaire de données
Mettre à jour les donnéesInsérer des données (insert)
Modifier leurs valeurs (update)
Supprimer des données (delete)
Fusionner les données entre deux tables sans écrasement (merge)
TRAVAUX PRATIQUES

Le langage SQL pour extraire les données

Premières requêtes SQL pour interroger la baseStructure générale (select … from …. where …)
Vocabulaire associé (sélections, projection, restrictions)
La gestion de la valeur NULL
Trier les données
Utiliser des alias pour simplifier les requêtes
Obtenir les données de plusieurs tables (jointure)
Utiliser des fonctions de groupe (count, sum, avg, …)
Regrouper les données (group by) et les filtrer (having)
TRAVAUX PRATIQUESRequêtes ensemblistesLes opérateurs ensemblistes (union, intersection, différence).
Les requêtes imbriquées (opérateurs IN, EXISTS).
TRAVAUX PRATIQUESLes fonctionsManipulations de chaînes de caractères (upper, lower, substr, instr, replace, …)
Fonctions numériques (abs, round, trunc, ceil, …)
Gestion du temps (next_day, add_mont, months_between, …)
Fonctions de conversion (to_char, to_date, cast, …)
TRAVAUX PRATIQUESSensibilisation aux performances des requêtesPlusieurs façons d’écrire une même requête
Comment Oracle analyse une requête ?
Présentation des possibilités pour modifier les performances (statistiques, règles, …)
Principes des index
Cas des clusters.
Les objets de schémaÉléments du quotidien autres que les tablesSéquences et auto-incrementation (12c)
Intérêt des vues (view)
Exploiter les vues du dictionnaires de données
Présentation du PL/SQL (procédures, fonctions, packages et triggers)
TRAVAUX PRATIQUESLa notion de schéma, et la gestion des droits.Regrouper les données dans un schéma.
Qu’est-ce qu’un utilisateur pour Oracle ?
La gestion des autorisations (grant, revoke)
TRAVAUX PRATIQUES

La notion de transaction

Qu’est-ce qu’une transaction ?
Les « garanties » d’ORACLE par rapport aux données
Les instructions COMMIT, ROLLBACK et SAVEPOINT.
La gestion des accès concurrents (verrou)
Exemples de blocages en SQL
Exemple de transaction trop volumineuse (rollback segment)
TRAVAUX PRATIQUES

Travaux Pratiques

Chaque participant dispose de sa propre base Oracle pour plus de souplesse dans les tests personnels et les travaux pratiques.

Réf:

4120

Tarif:

599 Dt

Niveau:

Fondamental

Classe à distance:

Possible