实验九:T-SQL语言、存储过程及数据库的安全性
一、实验目的
1.掌握数据变量的使用;
2.掌握各种控制语句及系统函数的使用;
3.掌握存储过程的实现;
4.掌握混合模式下数据库用户帐号的建立与取消方法;
5.掌握数据库用户权限的设置方法;
6.掌握在企业管理器中进行备份、恢复操作的步骤;
二、实验学时
2学时
三、实验要求
1.了解T-SQL支持的各种基本数据类型及变量的使用;
2.了解T-SQL各种运算符、控制语句及函数的功能及使用方法;
3.掌握存储过程的编写和运行方法
4.熟悉数据库完全备份及恢复的方法;
5.了解SQL Server 2008系统安全;
6.熟悉数据库用户、服务器角色及数据库角色的用法
7.完成实验报告。
四、实验内容
以student数据库为基础数据,完成以下内容
1.变量及函数的使用:
1)创建局部变量@xh(学号)并赋值,然后输出数据表student中所有等于该值的学生的学号、姓名、性别、所属院系及年龄等信息;
2)将学号为200515008的学生的姓名赋值给变量@name;
3)计算学生信息表student中学生最高年龄和最低年龄之差,并将结果付给@cz;
4)定义一函数,按系别统计当前所有学生的平均年龄,并调用该函数。
5)定义一函数,通过姓名查询某学生的学号、性别、年龄、系别、选修课程名及成绩。
2.编写并执行存储过程
(1)创建一个无参存储过程pr_StuScore,查询以下信息:班级、学号、姓名、
性别、课程名称、考试成绩。
(2)创建一个带参数的存储过程stu_info,该存储过程根据传入的学生编号在
student表中查询此学生的选修课程及成绩信息。
(3)创建一个带参数的存储过程StuScoreInfo2,该存储过程根据传入的学生
编号和课程名称查询以下信息:班级、学号、姓名、性别、课程名称、考试成绩。
(4)编写带参数的存储过程,根据传入的课程名称统计该课程的平均成绩。
3.*对数据库student进行完全备份和恢复操作;
4.*以系统管理员身份登录到SQL Server服务器,在SQL Server2008界面中实现以下操作
1)在当前计算机中增加一个用户zhang,密码为secret。使此用户通过windows
模式下登录SQL Server服务器,登录名为zhang;
2)新建以混合模式登录SQL Server服务器的用户登录名分别为stu1、stu2和
stu3,登录密码为secret,默认登录数据库为student;
3)在数据库student中创建用户zhang,登录帐号为zhang;
4)在数据库student中创建用户stu1、stu2和stu3,登录帐号为stu1、stu2
和stu3;
5)给数据库用户zhang赋予创建数据表的权限;
6)给数据库用户stu1赋予对sc表进行插入、修改、删除操作权限;
7)给数据库用户stu2和stu3赋予对student表、course表所有操作权限及查
询sc的操作权限,并允许再授权给其他用户;
8)撤销数据库用户stu2对student表和course表的删除操作的权限;
五、实验步骤
3. 对数据库student进行完全备份和恢复操作;
1)对数据库student进行完全备份操作;
以管理员账号登录SQL Server并运行SQL Server资源管理器;以下方法任选其一
方法1:利用资源管理器进行备份
(1)打开【对象资源管理器】,在【服务器对象】节点下找到【备份设备】节点,单击鼠标右键,弹出右键菜单,选择【新建备份设备】菜单,弹出新建备份设备窗口。输入备份设备逻辑名称data_backup,并指定备份设备的物理路