Langage de contrôle de données
Apparence
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
[modifier | modifier le code]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
[modifier | modifier le code]Autorisation
[modifier | modifier le code]Autoriser un utilisateur à effectuer une action :
GRANT UPDATE (nom, prenom) ON eleves
TO enseignant
WITH GRANT OPTION;
Interdiction
[modifier | modifier le code]Empêcher un utilisateur d'effectuer une action :
DENY DELETE
TO enseignant
Annulation
[modifier | modifier le code]Annuler la précédente commande de contrôle de données :
REVOKE UPDATE (nom, prenom)
ON eleves
FROM enseignant
Validation d'une transaction
[modifier | modifier le code]Valider la transaction en cours :
START TRANSACTION;
UPDATE eleves
SET age = '19'
WHERE nom = 'Lacourt' and prenom = 'Stéphane';
COMMIT;
Annulation d'une transaction
[modifier | modifier le code]Annuler la transaction en cours :
ROLLBACK TO sauvegarde;
Verrouillage
[modifier | modifier le code]Verrouiller une structure de données :
LOCK TABLE eleves IN EXCLUSIVE MODE;