Structured Query Language - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Langages concurrents

Parmi les autres langages de requêtes, citons les ancêtres de SQL comme QUEL ou SEQUEL. Cependant le langage QBE, très différent de SQL, est encore en vigueur dans le SGBDR de type « fichier » qu'est Paradox (Ansa Software/Borland/Corel).

Langages apparentés

  • OQL est un langage similaire à SQL, pour les demander des opérations aux bases de données orientées objet et obtenir les résultats sous forme d'objets. Le langage est normalisé par le Object Data Management Group - un consortium d'industriels informatiques qui a cessé toute activité en 2001.

Systèmes de gestion de base de données utilisant SQL

  • MaxDB (anciennement SAP db)
  • Microsoft SQL Server
  • Mimer
  • MySQL
  • Ocelot
  • Oracle
  • Paradox
  • PostgreSQL
  • SQLite
  • SQL/MM
  • Sybase
  • Teradata

Tous ces systèmes présentent certaines particularités dont certaines ne se retrouvent pas chez d'autres. Il est d'ailleurs toujours intéressant de se référer au manuel de référence du SGDBR, lors de requêtes particulières ou complexes, ainsi que pour leur optimisation.

Candidats au remplacement

SQL possède quelques anomalies, dont l'une est de permettre l'enchâssement de commandes à certains endroits et de les interdire dans d'autres, d'une façon qui peut sembler arbitraire à l'utilisateur, et l'oblige en tout cas à contorsionner sa pensée. Un langage plus récent nommé Tutorial D est présenté comme étant plus cohérent et plus simple d'emploi par ses inventeurs. Il permet, de surcroît, pour alléger le libellé des requêtes, l'emploi d'une clause WITH inspirée du langage Pascal, bien que WITH ne contribue pas à faciliter la lecture du code. A noter que la technique du WITH a été en partie reprise dans la norme SQL:1999 pour réaliser des "Common Table Expression" (CTE ou expression de table en français), c'est-à-dire des vues non instanciées utilisables par la requête dans laquelle elles figurent, et ce afin de factoriser des expressions ou encore de permettre l'écriture de requêtes récursives de manière à résoudre élégamment des parcours d'arbres ou de graphes.

Parmi les autres candidats il y a BS12, qui lui aussi s'est attaqué à ce problème de l'enchâssement et de la perte de lisibilité qu'il entraîne. Il y a aussi TCL, inclus dans le système d'exploitation Pick.

Ouvrages sur le langage SQL

En français

  • Bases de données - de la modélisation au SQL - Laurent Audibert - Ellipses 2009
  • SQL Synthèse de cours et exercices - 2e édition - Frédéric Brouard, Christian Soutou, Rudi Bruchez - Pearson Education 2008
  • SQL par l'exemple - Antony Molinaro - O'reilly, 2007
  • SQL en concentré - Kevin Kline - O'reilly, 2005
  • SQL pour les nuls - Allen G. Taylor - First Interractive, 2001
  • SQL développement - Frédéric Brouard - Campus Press 2001
  • SQL avancé (2e édition) - Joe Celko - Vuibert 2000

En anglais

  • The Art of SQL - Stéphane Faroult - O'Reilly, 2006
  • Advanced SQL:1999 - Jim Melton - Morgan Kaufmann, 2003
  • SQL bible - A. Kriegel, B. M. Trukhnov - John Wiley, 2003
  • SQL:1999, Understanding Relational Language Components - Jim Melton, Alan R. Simon - Morgan Kauffman, 2002
  • SQL2 - SQL3, Applications à Oracle (3e édition) - Pierre Delmal - De Boeck Université, 2001
  • SQL in a nutshell - Kevin Kline, Daneil Kline - O'Reilly, 2001
  • SQL 3, Implementing the SQL Foundation Standard - Paul Fortier - Mc Graw Hill, 1999
  • SQL-99 complete really - Peter Gulutzan, Trudy Pelzer - R&D Books, 1999
  • The Complete Reference SQL - J. R. Groff, P. N. Weinberg - Osborne, 1999
  • A guide to the SQL standard - Chris J. Date, Hugh Darwen - Addison Wesley - USA, 1997
  • Understanding the new SQL - Jim Melton, Alan R. Simon - Morgan Kaufmann, 1993
Page générée en 0.079 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise