一、实验目的
二、实验内容
1、设置身份验证模式:Windows身份验证模式和混合模验证模式。
2、设置登录账户
3、设置数据库用户
4、设置数据库角色。
5、设置管理对象的权限
三、实验步骤
1.将SQL Server服务器设置为混合身份验证模式
如果安装时使用的是”“Windows身份验证模式”,则按以下步骤可以将SQL Server服务器设置为“混合身份验证模式”。
EXEC sp_password null, '123','sa'
ALTER LOGIN sa ENABLE
2.创建登录名mylogin
CREATE LOGIN mylogin WITH PASSWORD = '123';
GO
3.创建数据库用户myuser并映射登录名mylogin
通过SSMS将附件压缩包“案例数据库”中的“学生-教学”数据库(含mdf和ldf两个文件)导入到本地数据库中,然后执行以下操作:
create user myuser for login mylogin with default_schema=dbo
4创建并设置数据库角色
CREATE ROLE myrole
5对用户赋予指定的角色
exec sp_addrolemember 'db_owner', 'myuser'
此时,myuser就可以全权管理数据库“学生-教学”中的对象了。
use S_T
go
create user myuser for login mylogin with default_schema=dbo
go
exec sp_addrolemember 'db_owner', 'myuser'
go
6.设置管理对象的权限
7. 以mylogin登录“127.0.0.1\SQLEXPRESS”服务器,在“学生_教学”数据库的Student表中进行增删改查的操作。示例如下。
四、实验任务
1、创建一个登录账号Testlogin。
2、在“学生_教学”数据库中创建对应于这个登录账号的数据库用户TestUser。
3、在“学生_教学”数据库中创建角色TestRole,它应该拥有创建表和视图的权限,并拥有对Student表的查询、修改、插入权限。
4、将用户TestUser添加到TestRole角色中。
5、以Testlogin登录“127.0.0.1\SQLEXPRESS”服务器,在“学生_教学”数据库的Student表中插入一条记录。
五、实验报告要求
1、写出完成实验任务1~4相对应的SQL语句
任务1:
CREATE LOGIN TestLogin WITH PASSWORD = '123';
GO
任务2:
create user TestUser for login Testlogin with default_schema=dbo
任务3:
CREATE ROLE TestRole
grant create table,create view to TestRole
grant select,update,insert on Student to TestRole
任务4:
exec sp_addrolemember 'TestRole', 'TestUser'
2、给出实验任务5的执行界面截图。参照“实验步骤”中的最后一幅示例图,要求同时显示Testlogin登录“127.0.0.1\SQLEXPRESS”服务器的界面信息及在“学生_教学”数据库的Student表中插入一个名字为“王小飞”的学生记录。
use 学生_教学
go
INSERT INTO Student (Sno,Sname)
VALUES(202005113,'王小飞')
SELECT *
FROM Student
3、并记录在实验过程中遇到的问题、解决办法及心得体会。
问题1:添加附件失败,如图:
原因:断开了windows身份验证,也没有登录sa的混合身份验证,而是直接进行了TestLogin身份验证,导致没有权限添加附件。
解决办法:在windows身份验证的连接下,再次进行sa的混合身份验证,这里才可以添加身份验证。当然,我也在网上搜了搜,打开了很多权限。
问题2:127.0.0.1\SQLEXPRESS没有连接上。
原因:脑子抽了,以为有选项可以供选择。
解决办法:网上搜了很多,也打开了很多权限,启动服务好多次。最后同学告诉我,这是手动输入。
问题3:
解决办法:要在学生-教学数据库里操作,添加use 学生_教学 go 语句。
心得体会:多练多学多问,继续加油。