SQL (Structured Query Language, traduisez Langage de requêtes structuré)
est un langage de définition de données (LDD, ou en anglais DDL Data Definition Language),
un langage de manipulation de données (LMD, ou en anglais DML, Data Manipulation Language),
et un langage de contrôle de données (LCD, ou en anglais DCL, Data Control Language),
pour les bases de données relationnelles.
Le modèle relationnel a été inventé par E.F. Codd (Directeur de
recherche du centre IBM de San José) en 1970,
suite à quoi de nombreux langages ont fait leur apparition:
- IBM Sequel (Structured English Query Language) en 1977
- IBM Sequel/2
- IBM System/R
- IBM DB2
Ce sont ces langages qui ont donné naissance au standard SQL, normalisé en 1986
par l'ANSI pour donner SQL/86. Puis en 1989 la version SQL/89 a été approuvée.
La norme SQL/92 a désormais pour nom SQL 2.
SQL est un langage de définition de données (LDD), c'est-à-dire qu'il
permet de créer des tables dans une base de données relationnelle, ainsi
que d'en modifier ou en supprimer.
SQL est un langage de manipulation de données (LMD), cela signifie qu'il permet de sélectionner,
insérer, modifier ou supprimer des données dans une table d'une base de données relationnelle.
Il est possible avec SQL de définir des permissions au niveau des utilisateurs d'une base de données.
On parle de DCL (Data Control Language).
Il est possible d'inclure des requêtes SQL dans un programme écrit dans un autre
langage (en langage C par exemple), ainsi que d'envoyer directement les requêtes SQL telles
quelles au SGBD.
Il est possible d'ajouter des commentaires grâce:
- au caractère %. Tous les caractères situés après celui-ci sur la même ligne
ne seront pas interprétés
- aux délimiteurs /* et */. Tous les caractères compris entre les délimiteurs
sont considérés comme des commentaires
|
Les commentaires ne peuvent pas être imbriqués!
|
Le langage SQL n'est pas sensible à la casse (en anglais case sensitive), cela
signifie que l'on peut aussi bien écrire les instructions en minuscules qu'en majuscule.
Toutefois, cette insensibilité à la casse n'est que partielle dans la mesure où
la différenciation entre minuscules et majuscules existe au niveau des identificateurs d'objets.
|