SQL
Signifie « Structured Query Language ».
SQL est un langage de requête utilisé pour accéder aux informations d’une base de données et les modifier. Les développeurs web utilisent SQL pour connecter des sites web et des applications web à des bases de données, afin de créer des pages web dynamiques capables d’afficher des informations à jour chaque fois qu’elles sont chargées. SQL est un langage standard pour les requêtes de bases de données, utilisé par de nombreux systèmes de gestion de bases de données différents, comme Oracle Database et MySQL.
Les sites web et les applications web utilisent des instructions SQL pour interroger des bases de données relationnelles, qui stockent les données dans des tables, des lignes (représentant les entrées de la base de données) et des colonnes (pour les attributs de ces entrées). Par exemple, un site d’e-commerce qui gère son inventaire dans une base de données stockerait ses produits dans une table : chaque produit sous forme de ligne, et les informations sur chaque produit, comme le prix, la taille et la couleur, sous forme de colonnes. Lorsque vous consultez la page web d’un article, le serveur web utilise un langage de script comme PHP pour effectuer une ou plusieurs requêtes SQL afin de récupérer les informations sur ce produit, puis inclut les résultats dans la page HTML. Si le prix de ce produit change dans la base de données, cette nouvelle information apparaîtra la prochaine fois que vous chargerez cette page web.
La commande SQL la plus courante est SELECT, qui récupère des informations dans une table. Elle peut extraire toutes les informations d’une table ou uniquement les enregistrements qui répondent à certains critères. Par exemple, la requête suivante récupère tous les enregistrements de clients correspondant au code postal indiqué.
SELECT * FROM Customers WHERE Zip='55400';
La requête ci-dessous récupère le prix d’un produit donné :
SELECT Price FROM Products WHERE ProductID=47988;
La commande UPDATE modifie les informations stockées dans une table, une ligne et une colonne données. INSERT INTO crée de nouveaux enregistrements, tandis que DELETE FROM supprime un enregistrement.
NOTE: Si le développeur d’un site web ne valide pas correctement les données saisies par les utilisateurs et ne contrôle pas l’accès à ses bases de données, le site peut être vulnérable à une attaque par injection SQL. Une injection SQL permet à un attaquant d’envoyer à une base de données des instructions SQL malveillantes qui ne seraient normalement pas autorisées — par exemple, pour récupérer la liste complète des noms, adresses et numéros de carte bancaire des clients.
Testez vos connaissances