Un 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.

Commandes SQL 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.

Exemples de requêtes

Autorisation Autoriser un utilisateur à effectuer une action : GRANT UPDATE (nom, prenom) ON eleves TO enseignant WITH GRANT OPTION;

Interdiction Empêcher un utilisateur d'effectuer une action : DENY DELETE TO enseignant

Annulation Annuler la précédente commande de contrôle de données : REVOKE UPDATE (nom, prenom) ON eleves FROM enseignant

Validation d'une transaction Valider la transaction en cours : START TRANSACTION; UPDATE eleves SET age = '19' WHERE nom = 'Lacourt' and prenom = 'Stéphane'; COMMIT;

Annulation d'une transaction Annuler la transaction en cours : ROLLBACK TO sauvegarde;

Verrouillage Verrouiller une structure de données : LOCK TABLE eleves IN EXCLUSIVE MODE;

Voir aussi

Langage de définition de données (LDD) Langage de manipulation de données (LMD)

Catégorie:Base de données Catégorie:Langage de requête