SQL: Exploration des Bases de Données
Lien sécurisé — 5 min
À propos de ce cours
Ce polycopié présente le langage SQL, Il ne suppose que quelques connaissances de base exposées dans le polycopé d'introduction aux base de données.
Les exemple ont été testés avec le SGBD Oracle, version 10g mais n'utilisent qu'exceptionnellement les particularités de ce SGBD par rapport aux normes SQL.
Ce cours concerne la norme SQL2.SQL3, le relationnel-objet et l'interface avec le language Java étudiés dans un autre cours.Présentation de SQL
Extrait du cours...
SQL signifie "Structured Query Language" c'est-à-dire "Langage d'interrogation structuré".
En fait SQL est un langage complet de gestion de base de données relationnelles. Il a été conçu par IBM dans les années 70. Il est devenu le langage standard des systèmes de gestion de bases de données (SGBD) relationnelles (SGBDR).
Programme du cours
Objectifs d'apprentissage
- Maîtriser les fondamentaux du langage SQL pour interroger et manipuler des bases de données relationnelles
- Comprendre la structure et la syntaxe des commandes SQL de base (SELECT, INSERT, UPDATE, DELETE)
- Apprendre à créer et modifier des schémas de base de données avec les commandes DDL (CREATE, ALTER, DROP)
- Savoir utiliser les fonctions d'agrégation et les jointures pour des requêtes complexes
- Acquérir les bonnes pratiques d'optimisation des requêtes SQL
- Comprendre les contraintes d'intégrité et leur mise en œuvre
Public cible
Ce cours s'adresse aux étudiants en informatique, aux développeurs débutants et aux professionnels souhaitant acquérir des compétences solides en gestion de bases de données relationnelles. Les participants doivent avoir des connaissances de base sur les systèmes de gestion de bases de données, telles que présentées dans un cours d'introduction aux bases de données. Ce cours est particulièrement adapté pour les futurs administrateurs de bases de données, analystes BI et développeurs d'applications data-driven.
Contenu détaillé
SQL signifie "Structured Query Language" c'est-à-dire "Langage d'interrogation structuré". En fait SQL est un langage complet de gestion de base de données relationnelles. Il a été conçu par IBM dans les années 70. Il est devenu le langage standard des systèmes de gestion de bases de données (SGBD) relationnelles (SGBDR).
Le cours couvre en détail les aspects suivants :
- Introduction à SQL : historique, standards SQL2/SQL3, architecture client-serveur
- Langage de définition de données (DDL) : création de tables, types de données, contraintes (PRIMARY KEY, FOREIGN KEY, CHECK)
- Langage de manipulation de données (DML) : requêtes SELECT (projection, sélection, tri), insertion, modification et suppression de données
- Fonctions SQL : fonctions scalaires, fonctions d'agrégation (COUNT, SUM, AVG), GROUP BY et HAVING
- Jointures : théorie des jointures, syntaxes INNER JOIN, LEFT/RIGHT JOIN, auto-jointures
- Sous-requêtes : utilisation dans les clauses WHERE, FROM et SELECT
- Vues : création et utilisation des vues comme abstraction des données
Approche pédagogique
Le cours combine théorie et pratique avec :
- Des exposés théoriques sur les concepts fondamentaux
- Des démonstrations sur le SGBD Oracle (version 10g)
- Des exercices pratiques progressifs
- Des études de cas concrets
Les exemples utilisés dans le cours ont été testés avec le SGBD Oracle, version 10g mais n'utilisent qu'exceptionnellement les particularités de ce SGBD par rapport aux normes SQL. L'accent est mis sur le SQL standard portable entre différents systèmes.
Prérequis
Ce polycopié présente le langage SQL. Il ne suppose que quelques connaissances de base exposées dans le polycopié d'introduction aux bases de données. Les participants doivent être familiers avec :
- Les concepts de base des bases de données relationnelles
- Le modèle relationnel et l'algèbre relationnelle
- La notion de tables, lignes et colonnes
- Les clés primaires et étrangères
Ce cours concerne spécifiquement la norme SQL2. Les aspects plus avancés comme SQL3, le relationnel-objet et l'interface avec le langage Java sont étudiés dans un autre cours.