前提,存在一个数据库:JIAOGUAN(教务管理系统),其中有一个表:Student
![](/d/20211017/086485e1577e56c06990a503073a8236.gif)
接下来,我们所有的操作都是针对这个表进行试验
第一步,使用sa账户登录SqlServer,并创建登录账户 test
![](/d/20211017/47945f6830102909322bb6abea59e057.gif)
create login test with password='test',default_database=JIAOGUAN --此登录账户默认拥有数据库JIAOGUAN的权限
第二步:设置用户的schema(具体含义自行查阅),并将用户加入到dbo
![](/d/20211017/0638fdf2b824f02c02e86437b9b3d643.gif)
use JIAOGUAN
create user test for login test with default_schema=dbo --dbo为DataBaseOwner的简写,每个数据库都有一个dbo用户
exec sp_addrolemember 'db_owner', 'test' --将test加入 db_owner角色
第三步:拒绝test用户对Student表执行insert语句
![](/d/20211017/ad554bad0abd13c72515ef2f0aed2021.gif)
use JIAOGUAN
deny insert on Student to test --拒绝test用户对Student表执行insert
此时,使用test用户登录,并尝试对Student表插入数据,会提示错误,注意:使用test用户登录
![](/d/20211017/132fc679f406a6de0d141e8c0786f8d3.gif)
第四步:拒绝test用户访问Student的gender和birth字段
![](/d/20211017/314af8b2c1a2b5ad604d7f767bd9a869.gif)
use JIAOGUAN
deny select on Student(gender,birth) to test --拒绝test用户访问Student表的gender和birth字段
使用test账户登录之后,尝试使用select * from Student,将提示错误
![](/d/20211017/5ab5139b28cde53775a31d036589f5fd.gif)
直接查看其它字段
![](/d/20211017/336d1e71dfc4ec5b038c28c4b4f817b2.gif)
以上步骤,说明刚刚为test用户设置的权限起了作用。
设置权限不仅仅只通过deny来设置,还有grant(用的最多),下次更新~
到此这篇关于Sqlserver创建用户并授权的实现步骤的文章就介绍到这了,更多相关Sqlserver创建用户并授权内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:- sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解
- SQL Server 2008 数据库中创建只读用户的方法
- sqlserver 2000中创建用户的图文方法