SQL - Les fondamentaux du langage (avec exercices et corrigés) - (4e édition)
Ce livre sur les fondamentaux du langage SQL s'adresse aux développeurs et informaticiens débutants appelés à travailler avec un Système de Gestion de Bases de Données Relationnelles (SGBDR) pour stocker et manipuler des données. Son objectif est de décrire les ordres principaux les plus utilisés du langage SQL (indépendamment des [...]
[lire le résumé du livre]
Auteur : Anne-Christine BISSON
Editeur : Eni
Collection : Ressources informatiques
Date parution : 09/2020Quel est le sujet du livre "SQL - Les fondamentaux du langage (avec exercices et corrigés) - (4e édition)"
Ce livre sur les fondamentaux du langage SQL s'adresse aux développeurs et informaticiens débutants appelés à travailler avec un Système de Gestion de Bases de Données Relationnelles (SGBDR) pour stocker et manipuler des données. Son objectif est de décrire les ordres principaux les plus utilisés du langage SQL (indépendamment des déclinaisons réalisées par les éditeurs de SGBDR) pour permettre au lecteur de prendre en main rapidement une base de données relationnelle et être capable de créer des tables, de les interroger, de les modifier, d'insérer et de supprimer des lignes.
Le livre débute par un bref historique sur la création de la norme SQL puis présente quelques notionssurle modèle relationnel. Ensuite, chaque chapitre présente une subdivision de SQL : la création et la manipulation des tables puis la gestion des données dans ces tables en incluant les dernières évolutions comme les fonctions de fenêtrage. L'auteur enchaîne avec la sécurité des données et quelques notions de transactions, puis présente la programmation avec quelques éléments de PL/SQL et l'étude des déclencheurs. Le livre setermine en abordant des thèmes un peu plus complexes comme les chargements en masse, les imports et exports de tables, les notions de performances ou encore les objets système.
Les exemples utilisés dans ce livre ont été réalisés avec la version Oracle 19c DB Developer VM, SQL Server 2019 SP1 Developer Edition, MySQL version 8, PostgreSQL en version 12.2 et sont en téléchargement sur le site www.editions-eni.fr.
Quizinclus dans
la version en ligne !Téléchargements
Anne-Christine BISSON est consultante indépendante en informatique décisionnelle. Cette experte conseille sur la conception de bases et entrepôts de données de différents SGDB. A ce titre, elle manipule et agrège des données à partir de sources diverses pour les restituer de façon synthétique dans des entreprises et administrations de différents secteurs. Également formatrice, elle prolonge avec ses livres sa volonté de partager ses connaissances auprès des lecteurs sur la suite MSBI (dont SSAS, Azure et Power BI) ou sur SQL.
En suivant ce lien, retrouvez tous les livres dans la spécialité Autres langages informatiques.
Sommaire et contenu du livre "SQL - Les fondamentaux du langage (avec exercices et corrigés) - (4e édition)"
Avant-propos
- Préambule
Introduction
- Un peu d'histoire
- Les normes SQL
- Description rapide du modèle relationnel
- 1. Principaux concepts du modèle relationnel
- 2. Principales règles
- L’algèbre relationnelle
- 1. Généralités
- 2. Les opérateurs
- a. Union
- b. Intersection
- c. Différence
- d. Division
- e. Restriction
- f. Projection
- g. Produit cartésien
- h. Jointure
- i. Calculs élémentaires
- j. Calcul d’agrégats
La définition des données (LDD)
- Les types de données
- 1. Numériques
- 2. Caractères
- 3. Dates et heures
- 4. Les types binaires
- 5. Autres types de données
- La création de tables
- 1. L’ordre CREATE
- 2. Tables temporaires
- 3. Les commentaires (COMMENT)
- 4. Créer une table à partir d’une sélectionde données
- 5. Utilisation des synonymes
- 6. Les séquences
- La suppression de tables
- 1. L’ordre DROP
- Vérifier l’existence d’un objet
- La modification de table
- 1. L’ordre ALTER
- 2. Renommer une table (RENAME)
- Vider une table
- 1. L’ordre TRUNCATE
- Les vues
- 1. Pourquoi utiliser des vues ?
- 2. La création de vues
- 3. La suppression de vues
- Les index
- 1. Les index et la norme SQL
- 2. Les différentes méthodes d’organisationdes index
- 3. La création d’index
- 4. La suppression d’index
- L'intégrité des données
- 1. La clé primaire (PRIMARY KEY)
- 2. La clé étrangère (FOREIGNKEY)
- 3. Les valeurs par défaut (DEFAULT)
- 4. La valeur NULL
- 5. La contrainte d’unicité UNIQUE
- 6. La contrainte de vérification CHECK
- 7. La suppression d’une clé primaire
- 8. Quelques conseils
- Exercices
- Solutions des exercices
La manipulation des données (LMD)
- Introduction
- La sélection de données
- 1. L’ordre de sélection de donnéesSELECT
- 2. Les options DISTINCT et ALL
- 3. Les tris
- 4. Les options TOP, LIMIT, OFFSET ou ROWNUM
- 5. L’utilisation des alias
- 6. La clause de restriction WHERE
- 7. Les commentaires
- 8. Les jointures
- a. La jointure interne
- b. La jointure externe
- c. La jointure naturelle
- d. La jointure croisée
- e. Syntaxes des différentes formes de jointures
- 9. Les regroupements (GROUP BY)
- 10. Les fonctions utilisées lors d’un regroupement
- a. Compter des lignes (COUNT)
- b. Additionner des valeurs (SUM)
- c. Valeurs maximum et minimum (MAX et MIN)
- d. Moyenne de valeurs (AVG)
- e. La clause de restriction sur un regroupement (HAVING)
- 11. Les instructions de condition CASE et IIF
- 12. La concaténation
- 13. L’instruction de choix (CHOOSE)
- 14. Résumé des syntaxes possibles duSELECT
- 15. Les opérateurs ensemblistes
- a. L’opérateur UNION
- b. L’opérateur INTERSECT
- c. L’opérateur EXCEPT
- 16. Les opérateurs arithmétiques
- 17. Les opérateurs de comparaison
- 18. Les opérateurs logiques
- 19. Comment construire une requête : quelquesconseils
- 20. Exercices sur la sélection de données
- a. Questions générales
- b. Exercices d’application
- 1. L’ordre INSERT
- 2. L’insertion à partir d’une autre table
- 3. Résumé des syntaxes de l’INSERT
- 4. Exercices sur l’insertion de données
- 1. L’ordre DELETE
- 2. Exercices sur la suppression de données
- 1. L’ordre UPDATE
- 2. Exercices sur la modification de données
- 1. L’ordre MERGE
- 1. Solutions des exercices sur la sélectionde données
- a. Questions générales
- b. Exercices d’application
Les fonctions
- Introduction
- Les fonctions numériques
- 1. ABS : valeur absolue
- 2. Valeur ASCII d’un caractère
- 3. COS : cosinus - SIN : sinus
- 4. LOG (<numéro base="">,<colonne>) : logarithmede la colonne sélectionnée dans la base indiquée</colonne></numéro>
- 5. MOD(<colonne>,<valeur>) : modulo</valeur></colonne>
- 6. ROUND(<colonne>,[<précision>]): arrondi</précision></colonne>
- 7. SQRT : racine carrée
- Les fonctions de gestion des dates et heures
- 1. Date du jour : CURRENT_DATE
- 2. Heure actuelle
- 3. Date et heure du jour : CURRENT_TIMESTAMP
- 4. Les différents formats d’affichagedes dates
- 5. La manipulation des dates et des heures
- Les fonctions sur les chaînes de caractères
- 1. Changement de casse LOWER / UPPER / UCASE / LCASE (minusculeset majuscules)
- 2. Supprimer les espaces à droite ou à gauched’une chaîne de caractères : TRIM / LTRIM / RTRIM
- 3. Trouver la position d’une chaîne de caractèresdans une chaîne : INSTR, CHARINDEX et POSITION
- 4. Ajouter des caractères avant ou aprèsune chaîne : LPAD / RPAD
- 5. Extraire une partie d’une chaîne de caractères: SUBSTR
- Les principales fonctions de conversion
- 1. Transformer un numérique ou une date en texte: TO_CHAR
- 2. Changer le type d’une colonne : CAST ou CONVERT
- 3. Changer le classement d’une colonne de type alphanumérique(COLLATE)
- Les fonctions de fenêtrage
- 1. Numérotation séquentielle et rangementde lignes
- 2. Distribution de lignes en groupes numérotés
- 3. Décalage de valeurs d’une ligne à uneautre
- Les autres fonctions
- 1. NVL : tester une colonne à null
- 2. Tester plusieurs valeurs : COALESCE
- 3. Comparer deux colonnes : NULLIF
- Exercices
- Solutions des exercices
La sécurité des données (DCL)
- Introduction
- Pourquoi définir des droits ?
- Créer une connexion
- Créer un utilisateur
- Changer le mot de passe d’un utilisateur
- Attribuer des droits (GRANT)
- 1. Attribuer des droits sur la manipulation d’unetable
- 2. Attribuer des droits sur les objets de la base
- 3. Les autres droits possibles
- Interdire l’accès (DENY)
- 1. Interdire l’accès à certainsobjets de la base
- Supprimer des droits (REVOKE)
- 1. Supprimer des droits sur la manipulation d’unetable
- 2. Supprimer des droits sur les objets de la base
- Utilisation des rôles
- Supprimer un rôle
- Exercices
- Solutions des exercices
Le contrôle de transactions (TCL)
- Problématique des accès concurrents
- 1. Illustration des accès concurrents
- a. Exemple 1 : mises à jour simultanées
- b. Exemple 2 : incohérence des donnéessuite à une modification d’un autre utilisateur
- 1. Illustration des accès concurrents
- 2. Le mécanisme de verrouillage
- 1. Définition d’une transaction
- 2. Comment éviter les incohérencesde données
- 3. Mise en œuvre d’un verrouillage
- a. READ UNCOMMITTED
- b. READ COMMITTED
- c. REPEATABLE-READ
- d. SERIALIZABLE
- e. Syntaxes
- a. Comment connaître les verrous poséssur une table ?
- b. Comment supprimer des verrous posés sur unetable ?
La programmation
- Introduction
- Syntaxe générale
- Les curseurs
- Le contrôle des flux
- 1. La boucle WHILE
- 2. La boucle FOR
- 3. La boucle LOOP
- 4. Les structures conditionnelles CASE et IF
- Les exceptions les plus utilisées
- La gestion des erreurs en Transact SQL
- Création d'une procédure stockée
- Création d'une fonction stockée
- Les packages
- Compilation d'une procédure, d'une fonction ou d'un package
- Suppression d'une procédure, d'une fonction ou d'un package
- Les déclencheurs
- 1. Création d’un déclencheur de contrôleet mise à jour dans une table
- 2. Création d’un déclencheur de suivides mises à jour
- Exercices
- Solutions des exercices
Approfondissement
- Les sous-requêtes
- 1. Les sous-requêtes imbriquées
- 2. Les sous-requêtes corrélées
- Les imports et exports de données
- 1. Charger des données en masse avec SQL*Loader
- 2. Les imports et exports de tables avec Oracle
- a. Les exports de tables
- b. Les imports de tables
- 3. Extraire les données d’une tabledans un fichier à plat
- 4. Importer les données d’une autresource de données
- 5. Importer les données d’un fichierXML
- 1. Utilisation de EXPLAIN PLAN
- 2. Utilisation du package DBMS_XPLAN.DISPLAY
- 3. Optimisation des requêtes par l’utilisationdes HINTS
- 4. Conclusion
- 1. Tables système pour les tables et colonnes
- a. Oracle
- b. MySQL
- c. SQL Server
- a. Oracle
- b. MySQL
- c. SQL Server
- a. Oracle
- b. MySQL
- c. SQL Server
- 1. Connaître la taille réelle d’unecolonne
- 2. Rechercher et supprimer des doublons dans une table
- 3. Afficher le contenu d’une table sans connaîtresa structure
- 4. Générer les ordres d’insertion dansune table à partir d’un fichier Excel
Les erreurs les plus couramment rencontrées
- Introduction
- Sur les accès aux données (LDD/LMD)
- Sur les transactions et les sessions (TCL/DCL)
- Sur les composants internes (mémoire, système)
Annexes
- Récapitulatif des ordres principaux
- 1. Les principaux ordres du LDD (langage de définitionde données) ou DDL (Data Definition Language)
- 2. Les principaux ordres du LMD (langage de manipulation dedonnées) ou DML (Data Manipulation Language)
- 3. Les principaux ordres du LCD (langage de contrôledes données) ou DCL (Data Control Language)
- 4. Les principaux ordres du LCT (langage de contrôledes transactions) ou TCL (Transaction Control Language)
- 5. La création de procédures et defonctions
- Fonctions SQL présentées dans ce livre
- Glossaire