SQL DCL语句
Data Control Language 数据控制语言。用于控制对数据的访问,主要的 DCL 操作包括 GRANT(授予用户访问和操作数据库的权限)和 REVOKE(撤销用户的数据库权限)。
几乎所有的数据库管理系统(DBMS)都支持 GRANT 和 REVOKE 命令,这些命令用于控制数据库的访问权限。GRANT 用于授予权限,而 REVOKE 用于撤销权限。不同的 DBMS,比如 MySQL、Oracle、SQL Server 等,可能会在这些命令的具体语法和用法上有所不同,但它们的基本功能和目的是相似的。所以这里以为MySQL为例:
授权 GRANT
命令格式:
GRANT
[权限类型] # 可以指定各种权限,如 SELECT, INSERT, UPDATE, DELETE 等。也可以使用 ALL PRIVILEGES 表示授予所有权限。
ON
[数据库对象] # 可以是数据库、表或者其他数据库对象。格式通常为 数据库名.表名。授予权限到所有数据库和表,可以使用 *.*。
TO
[用户名] # 格式通常为 '用户名'@'主机名'。
例如: 给ehigh用户授予所有权限
GRANT ALL PRIVILEGES ON *.* TO ehigh@'localhost';
移除权限 REVOKE
命令格式:
REVOKE
[权限类型]
ON
[数据库对象]
FROM
[用户名];
例如: 撤销 ehigh 在 db1 数据库上的 SELECT 权限
REVOKE SELECT ON db1.* FROM 'ehigh'@'localhost';