Avant-propos Objectif de ce livre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Comment utiliser ce livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Conventions d'écriture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Énoncés Chapitre 1 : Le langage de définition de données Pré-requis Énoncé 1.1 Énoncé 1.2 Énoncé 1.3 Énoncé 1.4 Énoncé 1.5 Énoncé 1.6 Énoncé 1.7 Énoncé 1.8 Énoncé 1.9 Énoncé 1.10 Énoncé 1.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Création de tables : le dictionnaire de données . . . . . . . . . . . . . . . . . . . . 15 Mise en place des tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Création d'une séquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Ajout de contraintes d'intégrité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Modification de table : ajout d'une colonne . . . . . . . . . . . . . . . . . . . . . . . 19 Suppression d'une colonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Création d'un index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Modification d'une contrainte d'intégrité . . . . . . . . . . . . . . . . . . . . . . . . . 20 Attribution d'une valeur par défaut à une colonne. . . . . . . . . . . . . . . . . . . 20 Définition d'un synonyme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Modification du nom d'une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Chapitre 2 : SQL DML Pré-requis Énoncé 2.1 Énoncé 2.2 Énoncé 2.3 Énoncé 2.4 Énoncé 2.5 Énoncé 2.6 Énoncé 2.7 Énoncé 2.8 Énoncé 2.9 Énoncé 2.10 Énoncé 2.11 Énoncé 2.12 Énoncé 2.13 Énoncé 2.14 Énoncé 2.15 Énoncé 2.16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Ajout d'informations dans une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Utilisation d'une séquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Exécution d'un script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Extraction simple d'informations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Activation de l'historique des mouvements . . . . . . . . . . . . . . . . . . . . . . . 30 Ajout d'une colonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Mise à jour conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Suppression de lignes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Extraction simple : catalogue général des livres . . . . . . . . . . . . . . . . . . . . 32 Extraction simple : tableau de bord des emprunts . . . . . . . . . . . . . . . . . . 32 Extraction avec calcul : nombre d'ouvrages dans chaque catégorie. . . . . . . 33 Extraction avec calcul d'agrégat : calcul de la durée moyenne d'un emprunt . . . . . . . . . . . . . . . . . . . . . . . . 33 Extraction avec calcul d'agrégat : durée moyenne de l'emprunt en fonction du genre du livre. . . . . . . . . . . . . . . . . . . . . . . . 34 Restriction sur un calcul d'agrégat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Jointure externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Création de vue - Calculer le nombre d'emprunts pour chaque membre . . . 35 Énoncé Énoncé Énoncé Énoncé Énoncé 2.17 2.18 2.19 2.20 2.21 Création de vue - Calculer le nombre d'emprunts par ouvrage . . . . . . . . . . Le tri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Création d'une table temporaire globale . . . . . . . . . . . . . . . . . . . . . . . . . Extraction complexe : mise en place d'un tableau de bord . . . . . . . . . . . . Extraction simple : établir la liste des livres . . . . . . . . . . . . . . . . . . . . . . 36 36 37 38 39 Chapitre 3 : SQL avancé Pré-requis Énoncé 3.1 Énoncé 3.2 Énoncé 3.3 Énoncé 3.4 Énoncé 3.5 Énoncé 3.6 Énoncé 3.7 Énoncé 3.8 Énoncé 3.9 Énoncé 3.10 Énoncé 3.11 Énoncé 3.12 Énoncé 3.13 Énoncé 3.14 Énoncé 3.15 .................................................... Calcul d'agrégat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sous-requête corrélée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sous-requête imbriquée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recherche sur un critère exprimé sous forme de chaîne de caractères . . . . Les expressions régulières . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Affichage détaillé des libellés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Définition de commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interrogation des commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optimisation d'une contrainte d'intégrité. . . . . . . . . . . . . . . . . . . . . . . . . Validation différée d'une contrainte d'intégrité . . . . . . . . . . . . . . . . . . . . . Suppression d'une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Restauration d'une table supprimée. . . . . . . . . . . . . . . . . . . . . . . . . . . . Message affiché en fonction du résultat d'un calcul . . . . . . . . . . . . . . . . . Tableau récapitulatif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Colonne virtuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 43 44 45 45 46 46 47 48 49 49 50 50 50 51 52 Chapitre 4 : PL/SQL Blocs et curseurs Pré-requis Énoncé 4.1 Énoncé 4.2 Énoncé 4.3 Énoncé 4.4 Énoncé 4.5 Énoncé 4.6 Énoncé 4.7 Énoncé 4.8 Énoncé 4.9 Énoncé 4.10 2 .................................................... Mise à jour conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Suppression conditionnelle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Affichage d'informations pendant l'exécution d'un bloc . . . . . . . . . . . . . . . Affichage d'informations et curseurs . . . . . . . . . . . . . . . . . . . . . . . . . . . Informations extraites suivant une condition complexe. . . . . . . . . . . . . . . Mise à jour conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modification d'une contrainte en fonction du résultat d'un calcul . . . . . . . . Informations supprimées en fonction du résultat d'une extraction . . . . . . . Champ formaté. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curseur paramétré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 58 59 60 61 61 62 63 64 64 65 Chapitre 5 : PL/SQL Procédures et fonctions Pré-requis Énoncé 5.1 Énoncé 5.2 Énoncé 5.3 Énoncé 5.4 Énoncé 5.5 Énoncé 5.6 Énoncé 5.7 Énoncé 5.8 Énoncé 5.9 Énoncé 5.10 Énoncé 5.11 Énoncé 5.12 Énoncé 5.13 Énoncé 5.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Calcul de date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Fonction de comparaison de données de type date . . . . . . . . . . . . . . . . . 70 Procédure pour automatiser un traitement . . . . . . . . . . . . . . . . . . . . . . . 71 Procédure de suppression conditionnelle. . . . . . . . . . . . . . . . . . . . . . . . . 71 Fonction pour extraire une ligne d'information . . . . . . . . . . . . . . . . . . . . . 72 Fonction pour encapsuler un calcul d'agrégat . . . . . . . . . . . . . . . . . . . . . 73 Fonction munie de plusieurs paramètres. . . . . . . . . . . . . . . . . . . . . . . . . 73 Planification d'une procédure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Séquence utilisée depuis une fonction . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Message d'erreur personnalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Procédure d'insertion multiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Comportement différent en fonction du contexte . . . . . . . . . . . . . . . . . . . 77 Création d'un package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Fonction renvoyant plusieurs valeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Chapitre 6 : Déclencheurs de bases de données Pré-requis Énoncé 6.1 Énoncé 6.2 Énoncé 6.3 Énoncé 6.4 Énoncé Énoncé Énoncé Énoncé 6.5 6.6 6.7 6.8 Énoncé Énoncé Énoncé Énoncé 6.9 6.10 6.11 6.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Contrôle de l'ajout d'informations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Définition d'un lien non transférable : un emprunt est toujours lié au même membre. . . . . . . . . . . . . . . . . . . . . 85 Lien non transférable : entre détails et exemplaires . . . . . . . . . . . . . . . . . 86 Modification automatique de la valeur d'une colonne en fonction d'une autre colonne . . . . . . . . . . . . . . . . . . . . . 87 Prise en compte des informations avant leur suppression . . . . . . . . . . . . . 88 Optimisation du suivi des opérations . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Analyse du suivi des opérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Modification automatique de l'état d'une colonne suite à la mise à jour d'informations d'une autre table. . . . . . . . . . . . . . . . 91 Verrouiller des enregistrements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Suppression cohérente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Déclencheur de synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Gérer l'évolution vers les ISBN à 13 chiffres et le code EAN 13 . . . . . . . . . 93 Chapitre 7 : TP général Énoncé Énoncé Énoncé Énoncé 7.1 7.2 7.3 7.4 Construction des tables . Modification de structure Ajout des informations . . Extraction simple . . . . . . ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ........ ........ ........ ........ . . . . . . 95 . . . . . . 96 . . . . . . 97 . . . . . . 97 3 Énoncé Énoncé Énoncé Énoncé Énoncé Énoncé 7.5 7.6 7.7 7.8 7.9 7.10 Calculs simples. . . . . . . . . . . . . . . . . . . Calculs d'agrégat. . . . . . . . . . . . . . . . . . Création de vues . . . . . . . . . . . . . . . . . . Procédure . . . . . . . . . . . . . . . . . . . . . . Fonctions . . . . . . . . . . . . . . . . . . . . . . . Déclencheurs de base de données. . . . . . ........ ........ ........ ........ ........ ........ ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... . . . . . . 97 97 98 98 99 99 Corrigés Chapitre 1 : Le langage de définition de données Pré-requis Corrigé 1.1 Corrigé 1.2 Corrigé 1.3 Corrigé 1.4 Corrigé 1.5 Corrigé 1.6 Corrigé 1.7 Corrigé 1.8 Corrigé 1.9 Corrigé 1.10 Corrigé 1.11 ................................................... Création de tables : le dictionnaire de données . . . . . . . . . . . . . . . . . . . Mise en place des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Création d'une séquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ajout de contraintes d'intégrité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modification de table : ajout d'une colonne . . . . . . . . . . . . . . . . . . . . . Suppression d'une colonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Création d'un index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modification d'une contrainte d'intégrité . . . . . . . . . . . . . . . . . . . . . . . . Attribution d'une valeur par défaut à une colonne . . . . . . . . . . . . . . . . . Définition d'un synonyme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modification du nom d'une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 104 106 108 108 108 108 109 109 110 110 110 Chapitre 2 : SQL DML Pré-requis Corrigé 2.1 Corrigé 2.2 Corrigé 2.3 Corrigé 2.4 Corrigé 2.5 Corrigé 2.6 Corrigé 2.7 Corrigé 2.8 Corrigé 2.9 Corrigé 2.10 Corrigé 2.11 Corrigé 2.12 Corrigé 2.13 Corrigé 2.14 4 ................................................... Ajout d'informations dans une table. . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation d'une séquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exécution d'un script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Extraction simple d'informations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Activation de l'historique des mouvements . . . . . . . . . . . . . . . . . . . . . . Ajout d'une colonne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mise à jour conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Suppression de lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Extraction simple : catalogue général des livres . . . . . . . . . . . . . . . . . . Extraction simple : tableau de bord des emprunts . . . . . . . . . . . . . . . . . Extraction avec calcul : nombre d'ouvrages dans chaque catégorie . . . . . Extraction avec calcul d'agrégat : calcul de la durée moyenne d'un emprunt . . . . . . . . . . . . . . . . . . . . . . Extraction avec calcul d'agrégat : durée moyenne de l'emprunt en fonction du genre du livre . . . . . . . . . . . . . . . . . . . . . . Restriction sur un calcul d'agrégat. . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 113 115 116 116 116 116 117 118 119 119 119 120 120 120 Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé 2.15 2.16 2.17 2.18 2.19 2.20 2.21 Jointure externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Création de vue - Calculer le nombre d'emprunts pour chaque membre . . 121 Création de vue - Calculer le nombre d'emprunts par ouvrage . . . . . . . . . 122 Le tri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Création d'une table temporaire globale . . . . . . . . . . . . . . . . . . . . . . . . 122 Extraction complexe : mise en place d'un tableau de bord. . . . . . . . . . . . 123 Extraction simple : établir la liste des livres . . . . . . . . . . . . . . . . . . . . . . 125 Chapitre 3 : SQL avancé Pré-requis Corrigé 3.1 Corrigé 3.2 Corrigé 3.3 Corrigé 3.4 Corrigé 3.5 Corrigé 3.6 Corrigé 3.7 Corrigé 3.8 Corrigé 3.9 Corrigé 3.10 Corrigé 3.11 Corrigé 3.12 Corrigé 3.13 Corrigé 3.14 Corrigé 3.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Calcul d'agrégat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Sous-requête corrélée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Sous-requête imbriquée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Recherche sur un critère exprimé sous forme de chaîne de caractères . . . 130 Les expressions régulières . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Affichage détaillé des libellés. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 Définition de commentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 Interrogation des commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Optimisation d'une contrainte d'intégrité . . . . . . . . . . . . . . . . . . . . . . . . 132 Validation différée d'une contrainte d'intégrité . . . . . . . . . . . . . . . . . . . . 133 Suppression d'une table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Restauration d'une table supprimée . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Message affiché en fonction du résultat d'un calcul . . . . . . . . . . . . . . . . 134 Tableau récapitulatif. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Colonne virtuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Chapitre 4 : PL/SQL Blocs et curseurs Pré-requis Corrigé 4.1 Corrigé 4.2 Corrigé 4.3 Corrigé 4.4 Corrigé 4.5 Corrigé 4.6 Corrigé 4.7 Corrigé 4.8 Corrigé 4.9 Corrigé 4.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Mise à jour conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Suppression conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Affichage d'informations pendant l'exécution d'un bloc . . . . . . . . . . . . . . 142 Affichage d'informations et curseurs . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Informations extraites suivant une condition complexe . . . . . . . . . . . . . . 144 Mise à jour conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 Modification d'une contrainte en fonction du résultat d'un calcul . . . . . . . 147 Informations supprimées en fonction du résultat d'une extraction . . . . . . . 148 Champ formaté . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Curseur paramétré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 5 Chapitre 5 : PL/SQL Procédures et fonctions Pré-requis Corrigé 5.1 Corrigé 5.2 Corrigé 5.3 Corrigé 5.4 Corrigé 5.5 Corrigé 5.6 Corrigé 5.7 Corrigé 5.8 Corrigé 5.9 Corrigé 5.10 Corrigé 5.11 Corrigé 5.12 Corrigé 5.13 Corrigé 5.14 ................................................... Calcul de date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fonction de comparaison de données de type date . . . . . . . . . . . . . . . . Procédure pour automatiser un traitement . . . . . . . . . . . . . . . . . . . . . . Procédure de suppression conditionnelle . . . . . . . . . . . . . . . . . . . . . . . Fonction pour extraire une ligne d'information. . . . . . . . . . . . . . . . . . . . Fonction pour encapsuler un calcul d'agrégat . . . . . . . . . . . . . . . . . . . . Fonction munie de plusieurs paramètres . . . . . . . . . . . . . . . . . . . . . . . Planification d'une procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Séquence utilisée depuis une fonction . . . . . . . . . . . . . . . . . . . . . . . . . Message d'erreur personnalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Procédure d'insertion multiple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comportement différent en fonction du contexte . . . . . . . . . . . . . . . . . . Création d'un package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fonction renvoyant plusieurs valeurs . . . . . . . . . . . . . . . . . . . . . . . . . . 151 152 152 153 153 154 155 156 157 158 159 159 160 161 166 Chapitre 6 : Déclencheurs de bases de données Pré-requis Corrigé 6.1 Corrigé 6.2 Corrigé 6.3 Corrigé 6.4 6 Corrigé Corrigé Corrigé Corrigé 6.5 6.6 6.7 6.8 Corrigé Corrigé Corrigé Corrigé 6.9 6.10 6.11 6.12 ................................................... Contrôle de l'ajout d'informations . . . . . . . . . . . . . . . . . . . . . . . . . . . . Définition d'un lien non transférable : un emprunt est toujours lié au même membre . . . . . . . . . . . . . . . . . . . Lien non transférable : entre détails et exemplaires . . . . . . . . . . . . . . . . Modification automatique de la valeur d'une colonne en fonction d'une autre colonne . . . . . . . . . . . . . . . . . . . Prise en compte des informations avant leur suppression . . . . . . . . . . . . Optimisation du suivi des opérations . . . . . . . . . . . . . . . . . . . . . . . . . . Analyse du suivi des opérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modification automatique de l'état d'une colonne suite à la mise à jour d'informations d'une autre table . . . . . . . . . . . . . . Verrouiller des enregistrements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Suppression cohérente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Déclencheur de synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gérer l'évolution vers les ISBN à 13 chiffres et le code EAN 13 . . . . . . . 167 169 170 170 171 172 173 175 176 180 181 183 184 Chapitre 7 : TP général Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé Corrigé 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7.10 Construction des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Modification de structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Ajout des informations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Extraction simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Calculs simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Calculs d'agrégat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Création de vues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Procédure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Déclencheurs de base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Annexes Annexe 1 : Structure de la base après le chapitre 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 Annexe 2 : Travailler avec Oracle Connaître le répertoire d'installation d'Oracle . . . . . . . . . . . . . . . . . . . . . . . . 203 Modifier le fichier de configuration tnsnames.ora . . . . . . . . . . . . . . . . . . . . . 203 Annexe 3 : Travailler avec une transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 7