SQLServer —— 用户权限操作

说明

以下操作都是基于SQLServer登陆验证方式登陆。而且操作员都是 sa。

一、添加登陆账号

use master
go
exec sp_addlogin 'xu', '123456'

第一个(xu)是登陆名,第二个(123456)是登陆密码。

执行语句,就可以在安全性登陆名里看到新创建的账号了。

二、创建数据库用户

use StudentManageDB
go
exec sp_grantdbaccess 'xu', 'xuUser01'

第一个(xu)是登陆名,第二个(xuUser01)是指定数据库用户。

执行语句,就可以在指定数据库安全性登陆名里看到新创建的账号了。

 

三、删除登陆账号

use master
go

exec sp_droplogin 'xu'

这样 xu 这个登陆账号就被删除了。

 四、删除数据库用户

use StudentManageDB
go
exec sp_dropuser 'xuUser01'

这样 xuUser01这个数据库用户就被删除了。

五、向数据库用户授权

授权的语法:

grant 权限 [on 表名] to 数据库用户

比如我新添加了一个登陆账号 xu,也给 StudentManageDB 数据库添加了数据库用户 xuUser01,现在我给这个数据库用户赋予对该数据库下的表 Students 查、增、改的权限。如下。

use StudentManageDB
go
grant select,insert,update on Students to xuUser01

权限分配好了,接着测试下。

use StudentManageDB
go
select * from Students

没问题。

 六、收回权限

语法:

revoke 权限 [on 表名] to 数据库用户

我针对 xuUser01 这个数据库用户,把刚刚赋予它的权限全部收回,如下:

use StudentManageDB
go
revoke select,insert,update on Students to xuUser01

这样登陆 xu 这个账号,又看不到 Students 这张表了。

原文地址:https://www.cnblogs.com/xulinjun/p/12000516.html