首页 > 数据库 >sql授权命令grant

sql授权命令grant

时间:2023-01-25 22:31:11浏览次数:55  
标签:user1 grant 查询 student sql 授权 权限 select


        因个人对数据库授权命令的喜爱,所以写了这篇文章,一来学会命令的使用,

二来为以后复习之用。

---------------------------------------------------------------------------------------------------------------------

1)授权命令 grant,语法格式(SQL语句不区分大小写):
Grant  <权限>  on  表名[(列名)]  to  用户 With  grant  option

或 GRANT <权限> ON <数据对象> FROM <数据库用户>  

//数据对象可以是表名或列名

//权限表示对表的操作,如select,update,insert,delete 
注:授权命令是由数据库管理员使用的,若给用户分配权限时带With  grant  option子句,

则普通用户获权后,可把自己的权限授予其他用户。

Grant单词翻译:
vt.承认;同意;准许;授予
n.拨款;补助金;授给物(如财产、授地、专有权、补助、拨款等)
vi.同意

2)回收权限 revoke
REVOKE <权限> ON <数据对象>  FROM <数据库用户名>

revoke翻译:
vt.撤销,取消;废除 vi.有牌不跟 n.有牌不跟

实战:

因机房装的是SQL2000,因此我测试时使用的是SQL2000

1) 首先我在服务器(local)上添加了一个用户user1,并将其添加了数据库student,

其拥有的权限为public(public为最小权限),截图如下:

sql授权命令grant_表名

 

其中有一张表为student(下图第四个)

sql授权命令grant_数据库_02

 当我们没有给用户 user1分配查询(select)权限时,在查询分析器中用user1登陆数据库student,

其连最基本的查询操作都不能执行,截图如下:

sql授权命令grant_数据_03

 

下面我们用授权命令grant给user1添加查询的权限(注意要用管理员账户才能执行以下命令)

截图如下:

sql授权命令grant_数据_04

将查询操作授权给user1后,用user1再次执行select命令,发现已经可以查询数据了,

截图如下:

sql授权命令grant_数据_05

当我们想除去用户user1的查询操作时,执行以下命令即可

//回收用户user1对表student的查询权限
revoke select on student from user1
//或 revoke select on student from user1 cascade

sql授权命令grant_表名_06




​​






标签:user1,grant,查询,student,sql,授权,权限,select
From: https://blog.51cto.com/softo/6023033

相关文章

  • Java连接SQL 2005数据库!...
    importjava.sql.Connection;//导入连接数据库类importjava.sql.DriverManager;//导入数据库驱动管理类importjava.sql.SQLException;//导入连接数据库异常类public......
  • C#输出SQL 2005表中所有记录!...
      主要代码如下:    //连接字符串stringstrConn="userid=sa;password=123456;initialcatalog=MyDb;Server=192.168.47.144,1433;ConnectTimeout=10";......
  • MySQL数据库
    目录数据库MySQL一、MySQL基本操作SQL语句二、修改字符编码配置文件以及数据库存储引擎1.修改字符编码2.数据库存储引擎3.严格模式三、创建表的完整的语法四、字段类型1.字......
  • 如何在 MySQL 中对选择查询获得的结果进行排序?
    通常从表中选择某些数据或行。行按它们在表中出现的顺序返回。我们有时可能会要求从表中选择的行必须相对于某些列按升序或降序返回给我们。“ORDERBY”语句用于对某些列的......
  • linux 安装mysql
    1下载mysqlwgethttps://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.41-linux-glibc2.12-x86_64.tar.gz2groupaddmysql添加用户组useradd-r-gmysql......
  • MySQL 哈希索引、空间数据索引、全文索引
    1.哈希索引哈希索引基于哈希表实现,仅支持精确匹配索引所有列的查询。对于每行数据,存储引擎都会对所有的索引列计算出一个哈希码。哈希索引将所有的哈希码存储在索引中,同时保......
  • 如何高效高性能的选择使用 MySQL 索引?
    想要实现高性能的查询,正确的使用索引是基础。本小节通过多个实际应用场景,帮助大家理解如何高效地选择和使用索引。1.独立的列独立的列,是指索引列不能是表达式的一部分,也不......
  • MySQL索引使用注意事项
    数据库索引可以提高搜索效率,在创建数据库的时候,就要考虑到,针对哪个业务字段添加什么样的索引,可以提高数据的查询效率。所以,索引在数据库是有很重要的位置的。今天就来学习一......
  • idea中使用插件操作mysql、redis
    idea中使用插件操作mysqlidea右侧选择Database 输入连接信息 可以写sql并执行  idea中使用redis插件操作redis安装插件 安装“Redis” 输入连接......
  • 学习笔记——NoSQL数据库;Redis概述;redis中常用的数据类型(key、string)
    2023-01-24一、NoSQL数据库1、NoSQL数据库的简介NoSQL(NoSQL=NotOnlySQL),即“不仅仅是SQL”,泛指非关系型的数据库。NosQL不依赖业务逻辑方式存储,而以简单的key-value模......