Langage de contrôle de donnéesUn langage de contrôle de données (LCD ; en anglais data control language, DCL) est un langage de programmation et un sous-ensemble de SQL pour contrôler l'accès aux données d'une base de données. On distingue typiquement six types de commandes SQL de contrôle de données : GRANT : autorisation d'un utilisateur à effectuer une action ; DENY : interdiction à un utilisateur d'effectuer une action ; REVOKE : annulation d'une commande de contrôle de données précédente ; COMMIT : validation d'une transaction en cours ; ROLLBACK : annulation d'une transaction en cours ; LOCK : verrouillage sur une structure de données.
Langage de manipulation de donnéesUn langage de manipulation de données (LMD ; en anglais data manipulation language, DML) est un langage de programmation et un sous-ensemble de SQL pour manipuler les données d'une base de données. Ces commandes de manipulation de données doivent être validées à l'issue d'une transaction pour être prises en compte. On distingue typiquement quatre types de commandes SQL de manipulation de données : SELECT : sélection de données dans une table ; INSERT : insertion de données dans une table ; DELETE : suppression de données d'une table ; UPDATE : mise à jour de données d'une table.
Langage de définition de donnéesUn langage de définition de données (LDD ; en anglais data definition language, DDL) est un langage de programmation et un sous-ensemble de SQL pour manipuler les structures de données d'une base de données, et non les données elles-mêmes. Il permet de définir le domaine des données, c'est-à-dire l'ensemble des valeurs que peut prendre une donnée : nombre, chaîne de caractères, date, booléen. Il permet aussi de regrouper les données ayant un lien conceptuel au sein d'une même entité.