实验内容:
- 修改用户sa的密码,实现用户sa登录。
- 使用对象资源管理器,为SQL SERVER创建一个名为user1的用户,然后使用该登录名重新登录数据库。
- 使用T-SQL语句创建一个名为user2的用户,然后使用该登录名重新登录数据库。
- 使用对象资源管理器,为SQL SERVER创建一个名为user3的用户,授予该用户查看SM的权限,然后使用该登录名重新登录数据库看看效果(提示:使用数据库角色授权db_datareader)。
- 使用对象资源管理器,为SQL SERVER创建一个名为user4的用户,授予该用户查看表sc中sno列的权限,然后使用该登录名重新登录数据库,分别执行如下SQL语句看看效果。
select sno
from sc
select *
from sc
6.用T-SQL语句把表SC的SELECT、UPDATE和DELETE权限授予给上面创建的user1,然后使用该登录名重新登录数据库看看效果。.
7.创建user5和user6,然后赋予全部用户对表SC的SELECT权限(使用public)。
8.收回所有用户对表SC的SELECT权限,重新登录user5,user6和user1看看效果,注意看清user1和user5权限不一样的地方,为什么会这样?
9.创建一个CLno为03的学生视图Student03,然后创建user7,把视图的Student03的查询权限赋予user7。
10.为SM数据库创建一个名为Role1的数据库角色,该角色拥有SC表的SELECT权限和SC表中Score列的UPDATE权限(提示:在角色中右键创建)。
11.修改上面创建的user2用户权限,把角色Role1的权限赋予给user2,然后使用该登录名重新登录数据库看看效果。
12.为SM数据库创建一个名为Role2的应用程序角色,该角色拥有Student表的SELECT权限和具有授予权限。
13.使用user4登录数据库,执行如下SQL语句看看效果:
select *
from student
如果查询不成功,不用退出登录,在T-SQL语句中激活应用程序角色Role2,再执行上面的SQL语句,看看结果。
源代码:
3.使用T-SQL语句创建一个名为user2的用户,然后使用该登录名重新登录数据库。
exec sp_addlogin'user2','123'
exec sp_grantdbaccess user2
5.
select sno
from sc
select *
from sc
6.
grant select,update,delete
on sc
to user1
8.
revoke select
on sc
from public
9.
go
create view Student03
as
select SNo
from Student
where CLno = '03'
go
exec sp_addlogin 'user7','12345','sm'
exec sp_grantdbaccess user7
grant select
on student
to public
11.
select *
from sc
13.
select *
from student