数据库管理系统 数据控制语言(DCL)

数据库管理系统 数据控制语言(DCL)

数据控制语言(DCL)的工作是处理用于允许用户访问、修改和操作数据库的SQL命令。它用于访问存储的数据。根据需要,它可以赋予数据库所有者访问权限、撤销访问权限并更改权限。

  • 它有助于使用用户权限修改或检索数据,并保护 against 未经授权访问。

  • 它补充了数据操作语言(DML)和数据定义语言(DDL)。

  • 它是三个命令中最简单的。

  • 它主要用于强制数据安全性。

DCL 命令

SQL 中的 DCL 命令包括 Grant 和 Revoke。

Grant 命令

它用于向特定数据库用户授予安全权限。在大多数情况下,它用于限制用户对插入、删除、选择、更新、执行、修改或提供用户数据的权限。

语法

GRANT privileges ON object_name TO user;
  • 特权指的是INSERT、DELETE、SELECT、UPDATE、EXECUTE、ALTER、ALL。

  • object_name指的是表名。

  • user指的是赋予特权的用户的名称。

示例

在这个示例中,我们将看到如何在表上使用授权命令。

步骤

  • 第1步 − 使用授权命令。

  • 第2步 − 提供特权。

  • 第3步 − 提供表名和用户名。

  • 第4步 − 使用SELECT、INSERT语句来获取输出。

输入

product_details

id name age marks
1 monu 23 90
2 somu 21 98
3 sonu 22 99

代码

GRANT SELECT, INSERT#operation to be performed
ON product_details#table on which operation is done
TO monu;#user name is monu
Select * from product_details;#data selected
Insert into product_deails values(4, ‘aman’,24,100);

输出

id name age marks
1 monu 23 90
2 somu 21 98
3 sonu 22 99
4 aman 24 100

REVOKE命令

这个命令用于撤销授权命令对用户的访问权限。它用于取消用户账户对数据库对象的访问特权。

语法

REVOKE privileges ON table_name FROM user;
  • 权限是指Insert、Delete、Select、Update、Execute、Alter、All

  • object_name指的是表名

  • user指的是要撤销权限的用户的名称

示例

在这个示例中,我们将看到如何在表上使用revoke命令。

步骤

  • 第1步 - 使用revoke命令

  • 第2步 - 提供权限

  • 第3步 - 提供表名和用户名。

输入

product_details

id name age marks
1 monu 23 90
2 somu 21 98
3 sonu 22 99

代码

REVOKE SELECT, INSERT#operation to be performed
ON product_details#table on which operation is done
FROM monu;user name is monu
Select * from product_details;#data selected

输出

ERROR

结论

在本文中,我们学习了用于访问存储数据的dcl命令。其中的两个主要组成部分是grant和revoke。Grant用于授予用户权限,而revoke用于从用户身上去除权限。请注意,授权成员可以将授权传递给另一个用户,并且可以随时被用户撤销。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程