Aller au contenu

Langage de contrôle de données

Un article de Wikipédia, l'encyclopédie libre.

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

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;

Sur les autres projets Wikimedia :