Programmation SQL/Langage de contrôle de données
Le LCD consiste à gérer les permissions et annulations des transactions, selon certains utilisateurs, certaines requêtes ou la reprise sur panne.
GRANT
modifierLa commande GRANT permet d'attribuer un ou plusieurs privilèges à un utilisateur ou un rôle sur des instructions (CREATE DATABASE, CREATE TABLE, CREATE VIEW, etc.) ou divers objets tels que des tables, des vues, des colonnes ou encore des procédures stockées.
CREATE USER 'NomDelUtilisateur'@'localhost' IDENTIFIED BY '***';
GRANT SELECT ,
INSERT ,
UPDATE ;
Exemple MySQL :
GRANT ALL PRIVILEGES ON `Base1`.* TO 'NomDelUtilisateur'@'localhost' WITH GRANT OPTION;
DENY
modifierEmpêche certains utilisateurs d'effectuer une certaine opération.
DENY ALL
ON Base1.*
TO 'NomDelUtilisateur'@'localhost';
NB : cette commande existe en Transact-SQL[1] mais pas en MySQL.
REVOKE
modifierLa commande REVOKE permet de révoquer des privilèges qui ont été attribués à un utilisateur ou à un rôle sur des instructions ou divers objets tels que des tables, des vues, des colonnes ou encore des procédures stockées.
REVOKE ALL PRIVILEGES ON `Base1`.* FROM 'NomDelUtilisateur'@'localhost';
UPDATE
modifierAutorise un utilisateur à mettre à jour des enregistrements.
READ
modifierEmpêche un utilisateur de modifier la base de données, il peut juste lire les données.
DELETE
modifierAutorise un utilisateur à effacer des enregistrements.
COMMIT
modifierValide une transaction en cours dans la base.
ROLLBACK
modifierAnnule une transaction en cours.