Pour accorder des privilèges à un utilisateur utilisant l'instruction GRANTION dans SQL, vous devez spécifier les privilèges que vous souhaitez accorder, l'objet (comme une base de données, une table ou une vue) à laquelle ces privilèges s'appliquent et l'utilisateur ou le rôle à qui vous accordez ces privilèges. La syntaxe générale de l'énoncé de subvention est la suivante:
<code class="sql">GRANT privilege_type [(column_list)] ON object_type object_name TO {user | role | PUBLIC} [WITH GRANT OPTION];</code>
Voici une ventilation des composants:
privilege_type
: spécifie le type de privilège accordé, tel que sélectionner, insérer, mettre à jour, supprimer, etc.(column_list)
: Facultatif. Si vous souhaitez accorder des privilèges sur des colonnes spécifiques d'une table, énumérez-les ici.object_type
: indique le type d'objet, généralement TABLE
, VIEW
ou DATABASE
.object_name
: le nom de l'objet spécifique sur lequel vous accordez des privilèges.user | role | PUBLIC
: l'utilisateur, le rôle ou le public à qui vous accordez le privilège.WITH GRANT OPTION
: Facultatif. S'il est spécifié, le bénéficiaire peut également accorder les mêmes privilèges à d'autres utilisateurs.Par exemple, pour accorder à un utilisateur nommé «John» la possibilité de sélectionner dans le tableau «Employés», vous utiliseriez:
<code class="sql">GRANT SELECT ON TABLE employees TO john;</code>
L'énoncé de subvention peut être utilisé pour attribuer une variété de privilèges en fonction du système de gestion de base de données spécifique utilisé. Voici quelques-uns des privilèges les plus courants:
Pour révoquer les privilèges qui avaient été précédemment accordés en utilisant la déclaration de subvention, vous utilisez la déclaration Revoke. La syntaxe de la déclaration de révocation est similaire à la déclaration de subvention et est la suivante:
<code class="sql">REVOKE privilege_type [(column_list)] ON object_type object_name FROM {user | role | PUBLIC} [RESTRICT | CASCADE];</code>
Voici une explication des composants:
privilege_type
, (column_list)
, object_type
et object_name
sont similaires à ceux de l'instruction de subvention.user | role | PUBLIC
: l'utilisateur, le rôle ou le public dont vous révoquez le privilège.RESTRICT | CASCADE
: Facultatif. RESTRICT
empêche la commande de terminer si elle affecterait d'autres objets, tandis que CASCADE
permet à la révocation de se propager aux objets dépendants.Par exemple, pour révoquer le privilège sélectionné de «John» sur le tableau «Employés», vous utiliseriez:
<code class="sql">REVOKE SELECT ON TABLE employees FROM john;</code>
Pour attribuer des privilèges à plusieurs utilisateurs à la fois en utilisant l'instruction Grant, vous pouvez répertorier les utilisateurs séparés par des virgules après le mot TO
clé. Voici la syntaxe générale pour ce faire:
<code class="sql">GRANT privilege_type [(column_list)] ON object_type object_name TO user1, user2, user3 [WITH GRANT OPTION];</code>
Par exemple, pour accorder un privilège sélectionné sur la table «Employés» à plusieurs utilisateurs nommés «John», «Jane» et «Bob», vous utiliseriez:
<code class="sql">GRANT SELECT ON TABLE employees TO john, jane, bob;</code>
Cette approche vous permet de gérer efficacement les privilèges entre plusieurs utilisateurs dans une seule commande, rationalisant des tâches d'administration de la base de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!