Le SQL est un langage de requête structuré (Structured Query Language) destiné à communiquer avec des bases de données relationnelles implémentées dans des SGBDR (Système de Gestion de Bases de Données Relationnelles) tels que Oracle, PostgreSQL, MySQL, SQL Server ou encore Paradox ou FoxPro.

Les bases de données relationnelles adoptent un modèle spécifique qui s'appuie sur l'algèbre relationnelle, laquelle a été introduite par M. CODD en 1970, afin de permettre la formalisation des opérations sur les ensembles.

Le langage SQL permet d'effectuer diverses opérations comme la création, l'extraction, la modification, la suppression, la fusion, etc., sur des collections de données, par l'intermédiaire d'instructions particulières appelées des commandes, souvent assistées d'ailleurs par des clauses ou des options.

La première mouture du langage SQL est apparu en 1979, puis sera standardisé à quatre reprises; en 1986 avec le SQL-ANSI (American National Standard Institute), en 1989 avec SQL-ISO (International Standard Application) et ANSI, en 1992 avec la seconde version du SQL-ISO et ANSI et enfin en 1999, pour établir la troisième version.

La dernière version, SQL 3, est composée de cinq parties distinctes :

  • le cadre SQL énonçant les bases principales,
  • les fondations SQL spécifiant la syntaxe et le fonctionnement,
  • l'interface d'appel SQL définissant l'interface de programmation,
  • les modules mémorisés persistants,
  • les liaisons avec le langage hôte.

En outre, le standard SQL possède deux niveaux de compatiblité avec des systèmes de bases de données :

  • le support principal, définissant les fondements du langage,
  • le support optimisé, fournissant des améliorations.

Malgré l'existance d'un standard destiné à assurer un degré de compatibilité optimal entre les différents SGBDR, les éditeurs ont pour la plupart intégrés des adjuvants, soit des extensions propriétaires améliorant leur propre implémentation. L'ensemble de ce cours est évidemment tributaire des différences entre les différentes implémentations, c'est pourquoi, il faut indubitablement, consulter au moins deux sites de références sur le langage SQL :

Le SQL 3 sera certainement la dernière avancée avant le basculement dans un langage de requête orienté vers une plus grande coopération vers XML (eXtended Markup Language), le XQL (XML Query Language).