au sommaire


    SQL signifie Structured Query Language qui se traduit par « langage de requête structurée ». C'est le langage quasi exclusif des SGBDR (systèmes de gestion de bases de donnéessystèmes de gestion de bases de données relationnelles) qui classe les données en tableaux.

    De multiples formes de langages

    Le SQL se compose de plusieurs langages :

    • langage de manipulation des données qui permet d'agir sur les bases de données relationnelles ;
    • langage de définition des données qui intervient sur l'organisation des données ;
    • langage de contrôle des transactions ;
    • langage de contrôle des données pour autoriser ou interdire l'accès de données à certains visiteurs.

    Il s'agit de véritables langages qui s'écrivent comme tel.

    Un langage très souple d’utilisation

    Normalisé en 1986, le SQL est très facile à utiliser :

    • on peut envoyer directement et sans les modifier les requêtes SQL au SGBDR ;
    • on peut ajouter des requêtes SQL à un programme rédigé dans un autre langage comme le C par exemple ;
    • on peut ajouter des commentaires grâce aux délimiteurs /* et */ et au caractère %.

    Le SQL est très pratique.

    À quoi sert le SQL ?

    Ce langage permet d'agir sur les données, sur les transactions informatiques (réservations, achats, paiements, etc.), sur la gestion des tables (ajouts, modifications) ou des utilisateurs et de leurs droits. Ses usages peuvent être classés en deux catégories :

    Manipulation et définition des données

    La manipulation et la définition des données implique l'usage d'un certain nombre de données :

    • SELECT : recherche de contenus. L'instruction SELECT permet de choisir les champs et les tables, de trier les résultats, de réaliser des calculs, etc.
    • UPDATE : modification du contenu ;
    • INSERTINSERT : ajout ;
    • DELETE : suppression des données.

    La définition des données repose sur les mots suivants :

    • REATE : ajouts de données ;
    • ALTER : modifications ;
    • DROP : suppression ;
    • RENAME : renommer ;
    • COMMENT : commenter ;
    • TRUNCATE : vider.

    C'est un langage qui n'est pas si difficile.

    SQL (<em>Structured Query Language</em> ou « Langage de requêtes structuré ») est un langage informatique destiné à interroger ou piloter une base de données. La première version commerciale fut disponible en 1979. © Brent Ozar, Flickr, CC by-sa 2.0
    SQL (Structured Query Language ou « Langage de requêtes structuré ») est un langage informatique destiné à interroger ou piloter une base de données. La première version commerciale fut disponible en 1979. © Brent Ozar, Flickr, CC by-sa 2.0

    Contrôle des données et des transactions

    Le contrôle des données et des transactions n'est pas difficile à apprendre non plus :

    • GRANT : autoriser un certain nombre d'opérations à l'égard de certaines personnes ;
    • REVOKE : suppression des autorisations ;
    • COMMIT : confirmer l'exécution de transactions ;
    • ROLLBACK : annulation des transactions.

    Il est naturellement indispensable de faire appel à un professionnel de l’informatique spécialisé dans le SQL qui constitue un langage à part entière.

    Comment fonctionne le langage SQL ?

    Le langage SQL repose sur un programme de transmission en direction de l'interface SGBD. L'embedded SQL introduit des instructions SQL dans un programme écrit dans un langage différent et la méthode des procédures stockées consiste à enregistrer dans la base de données des fonctions rédigées dans un langage procédural.

    Le langage SQL et l’interface SGBD

    Un programme transmet en langage SQL des instructions à destination de l'interface de programmation du SGBD. L'administrateur peut effectuer ainsi un certain nombre d'opérations.

    Les méthodes d’embedded SQL et les procédures stockées

    Deux techniques utiles et efficaces :

    • l'embedded SQL intègre dans le code source d'un programme rédigé dans un autre langage des instructions en langage SQL ;
    • les procédures stockées : des instructions fonctions rédigées dans un langage procédural propre à chaque SGBD (SQL/PSM pour MySQL) sont envoyées à un serveurserveur SQL qui les interprète. Elles sont ensuite exécutées.

    Les triggers ou déclencheurs, qui se mettent en route sous l'impulsion d'un évènement particulier, font appel aux procédures stockées.