© Your Copyright
Il existe une quantité importante d’information sur le langage SQL.
Dans un premier temps, le lecteur pourra consulter le lien suivant wikipédia pour avoir une approche globale sur le langage SQL.
Ci-dessous une présentation très schématique de ce qu’est le langage SQL.
Langage déclaratif pour créer et manipuler de bases de données relationnelles
Les industriels l’emporte et le langage SQL sera normalisé ANSI en 1986.
Les universitaires, dont Michael Stonebraker qui a reçu le pris A. Turing en 2014, développent post-ingres qui devient postgres puis PostgreSQL, un SGBDR relationnel Open Source dont nous recommandons vivement l’installation.
SQL est un Langage déclaratif « universel » pour manipuler des données relationnelles :
- Data Definition Language (DDL) : créer des ensembles de données
- Data Manipulation Language (DML) : manipulation des données dans des ensembles
- Data Control Language (DCL) :contrôler les données (types, contraintes,droits d’accès …)
- Transaction Control Language (TCL) : partager l’accès aux données
SQL peut-être exploiter dans des langages de programmation et réciproquement :
- PSM : Persistent Stored Module (PSM), procédures stockées, triggers sur un serveur de base de données
- CLI : Call Level Interface (CLI), appels de fonctions dans des requêtes SQL
- Embedded SQL : faire des requêtes SQL dans un langage hôte
CREATE TABLE
: créer des tables (ensemble de données).CREATE INDEX
: créer des index sur des colonnes (attributs) de table.CREATE VIEW
: créer une vue (correspondant à une requête) sur la base de données.ALTER TABLE
: faire évoluer le modèle de données en modifiant les tables.DROP TABLE
: détruire une table (un ensemble) dans la base de données.DROP INDEX
: enlevre un index existant sur une colonne (attribut) de table.DROP VIEW
: détruire une vue sur des tables (ensembles) de la base de données.SELECT
: rechercher des informationsUPDATE
: mettre à jour des informationsINSERT
: insérer de l’informationDELETE
: enlever des informationsGRANT
: donner des droits à des utilisateursREVOKE
: enlever des droits à des utilisateursLOCK
: verrouiller des droits sur des informationsBEGIN
: lancer une transaction sur la base de donnéesCOMMIT
: sauvegarder les changements sur la base de donnéesROLLBACK
: annuler tous les changements depuis le lancement de la transactionSAVE POINT
: pour diviser la transaction en plusieurs pints de sauvegardeCes commandes ne représentent évidemment qu’une partie de l’ensemble de commandes du langage selon la norme SQL.
Chaque SGBD relationnel suit de plus ou moins près cette norme de manière à être “SQL Compliant”.
Dans ce cours nous n’utiliserons qu’une partie de l’ensemble des commandes disponibles.