数据库原理上机实验指导Word格式.docx
- 文档编号:19382903
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:16
- 大小:23.68KB
数据库原理上机实验指导Word格式.docx
《数据库原理上机实验指导Word格式.docx》由会员分享,可在线阅读,更多相关《数据库原理上机实验指导Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
实验8:
数据库安全与保护——数据库的备份与恢复
实验9:
存储过程和触发器
实验10:
嵌入式SQL的使用
2.课时分配
实验
学时数
1
2
5
9
6
10
3
4
7
8
四、各实验简述
SQLServer服务器管理(2学时,上机实验)
1.实验目的和要求
通过本实验使学生掌握SQLServer服务器启动、停止和暂停的方法,服务器注册、连接与断开的方法以及服务器配置选项设置的方法,了解SQLServer工具程序企业管理器和查询分析器功能、作用和操作方法。
2.重点与难点
企业管理器和查询分析器的功能、作用和操作方法。
3.教学方法、手段、媒介
通过机房的计算机和投影设备演示、简要讲解SQLServer服务器启动、注册、企业管理器和查询分析器的启动,并指出其重点、难点,使学生对SQLServer数据库管理软件有一个感性认识,具有一定的动手能力。
4.实验过程与实验内容
要求学生参考教材第四章65至73页,在计算机上完成如下实验内容,对学生提出的问题,尽量加以引导由其自主完成。
(1)验证你所使用的机器中SQLServer安装是否成功。
(2)练习停止、暂停和启动SQLServer服务。
(3)查看当前服务器的配置情况。
(4)进入企业管理器,熟悉它的操作环境。
(5)进入查询分析器,熟悉它的操作环境。
5.思考题
(1)在客户/服务器体系结构中,数据库服务器和客户端计算机是如何分工的。
(2)了解SQLServer的工具软件功能与作用。
数据库管理(2学时,上机实验)
通过本实验使学生掌握创建、修改、删除数据库的方法和创建、修改、删除数据表的方法。
创建数据库和创建数据表。
通过机房的计算机和投影设备演示、简要讲解创建数据库的方法和步骤,使用的工具软件,并指出使用Transact-SQL创建数据库和数据表时应该注意命令的格式。
要求学生参考教材第四章73至83页以及第五章103至107页,在计算机上完成如下实验内容,对学生提出的问题,尽量加以引导由其自主完成并作必要的解答。
(1)使用企业管理器创建一个STUDENT数据库,并在库中创建Student、Course和Study三张表。
表名及表中存储的数据内容题目中已给出,但表的结构要求同学们根据存储数据的特点自行设计。
表名:
Student
学号
sno
姓名
name
性别
sex
年龄
age
籍贯
native
所在系
department
通信地址
address
1101
王燕
女
20
北京
工程系
1202
李波
男
21
上海
计算机系
1203
陈建
19
长沙
1303
张斌
22
经管系
1305
武汉
Course
课程号
cno
课程名
cname
任课老师
teacher
先行课程号
pcno
C601
高等数学
周振兴
Null
C602
大学英语
王志伟
C603
数据结构
刘剑平
C604
操作系统
Study
成绩
grade
90
1102
88
72
85
87
78
80
68
70
(2)在查询分析器中使用CREATEDATABASE语句创建OrderCenter数据库,并使用CREATETABLE语句在库中创建Products表,表结构如下:
列名
数据类型
能否空值
ProductID
ProductName
Descriptions
Price
InStock
INT
VARCHAR(32)
VARCHAR(128)
SMALLMONEY
BIT
No
Yes
(3)使用企业管理器创建一个名为TestDB的10MB的数据库,库中有一个叫Exercise的2MB的事务日志。
在完成后,使用企业管理器通过增加一个文件把数据库扩大5MB。
再在此数据库中创建Products表,表结构同
(2)。
使用ALTERTABLE语句在Products表中增加一个属性列(Weight,Decimal,为空),再把数据类型改为Real,再删除此属性列。
使用DROPTABLE语句删除Products表。
使用企业管理器删除TestDB数据库。
注意事项:
学生在每次实验后,应该将自己创建的数据库文件保存下来,在下次上机时,使用企业管理器附加数据库的功能恢复上次上机时的环境。
本次实验创建的数据库在后面的实验中要用到,请注意保存。
因为每次要建立一个上机环境会浪费一定的时间,不便于提高工作效率。
(1)掌握企业管理器和查询分析器的功能、作用。
(2)与数据库相关的磁盘文件和扩展名分别是什么?
Transact-SQL语言——数据查询(4学时,上机实验)
通过本实验使学生掌握Transact-SQL数据查询语句的使用方法。
简单查询、汇总查询、连接查询和子查询(嵌套查询)。
通过机房的计算机和投影设备演示、简要讲解怎样使用查询分析器来完成数据查询以及一些技巧。
要求学生利用实验2创建的STUDENT数据库完成实验3要求的内容。
对于普遍性的问题进行集体解答并通过机房的计算机和投影设备演示、讲解。
要求学生参考教材第五章109至131页,在STUDENT数据库中,根据要求在计算机上使用查询分析器执行SQL语言完成如下内容,将SQL语句以’姓名.sql’文件的形式保存在自己的目录下。
对学生提出的问题,尽量加以引导由其自主完成并作必要的解答。
(1)查询选修了课程的学生的学号。
(2)查询学生学号和出生年份。
(3)查询计算机系学生的学号、姓名。
(4)查询年龄在20岁与22岁之间(包括20和22岁)的学生姓名和年龄。
(5)查询学生姓名中含有“波”字的学生情况。
(6)查询缺少学习成绩的学生学号和课程号。
(7)查询选修C601课程的学生的学号和成绩,并按分数的降序排列。
(8)求选修了课程的学生人数。
(9)求课程C601的平均成绩。
(10)求选修课程超过2门的学生学号。
(11)查询参加学习的学生所学的课程号和总分。
(12)查询选修高等数学课程且成绩在80分以上的学生的学号、姓名。
(13)查询每一课程的间接先行课(即先行课的先行课)。
(14)查询年龄低于所有工程系学生的学生姓名、所在系、年龄。
(15)找出刘建平老师所开全部课程的课程号、课程名。
(16)找出全部课程的任课教师。
(17)求学生1203所学课程的总分。
(18)找出所有姓张的学生的姓名和籍贯。
(19)找出至少一门课程的成绩在90分以上的女学生的姓名。
(20)求出每一年龄上人数超过2的男生的具体人数,并按年龄从小到大排序。
(1)掌握SQL的特点和功能。
(2)连接、自身连接、外连接有何区别与联系?
(3)掌握连接查询、子查询工作过程。
Transact-SQL语言——数据定义与数据更新(2学时,上机实验)
通过本实验使学生掌握Transact-SQL数据定义、数据更新语句的使用方法。
Transact-SQL数据定义、数据更新语句。
简要讲解怎样使用查询分析器来完成数据更新和创建视图。
要求学生利用实验2创建的STUDENT数据库完成实验4要求的内容。
要求学生参考教材第五章131至140页,在STUDENT数据库中,根据要求在计算机上使用查询分析器执行SQL语言完成如下内容,将SQL语句以’姓名.sql’文件的形式保存在自己的目录下。
(1)把学生的学号及他的平均成绩定义为一个视图GRADE_VIEW。
并查询此视图的所有记录。
(2)创建一个从student、course、study表中查出计算机系的学生及其成绩的视图computer_view,要求显示学生的学号sno、姓名name、课程号cno、课程名称cname、成绩grade。
(3)在Student表中依据学生姓名创建索引name_index。
(4)在Study表中依据sno和cno创建索引main_index。
(5)将课程C603的任课老师改为“赵明”。
(6)在Student表中插入两个学生记录:
'
1201'
'
吴华'
'
女'
20,'
成都'
计算机系'
1102'
张军'
男'
21,'
上海'
工程系'
(7)删除年龄在21岁以上的学生记录。
(8)在course表中依据teacher创建索引teacher_index,然后删除此索引。
(9)先创建一个新表Study_Back,表的结构Study表相同。
使用INSERT语句将Study表中记录存入Study_Back表中。
(1)对于上述(9),如果没有创建新表Study_Back,也不用创建,还有什么方法可以将Study表中记录存入Study_Back表中?
(2)视图的更新与表的更新有什么不同?
数据库安全与保护——用户管理和权限管理(2学时,上机实验)
通过本实验使学生理解数据库安全的概念,掌握创建用户的方法和分配权限的方法。
登录名、用户名、角色、权限的概念、系统存储过程使用、权限管理。
通过机房的计算机和投影设备演示、简要讲解怎样使用企业管理器、系统存储过程和SQL语句来完成用户管理和权限管理。
要求学生利用实验2创建的STUDENT数据库和OrderCenter数据库完成实验5要求的内容。
要求学生参考教材第六章149至168页内容,在计算机上使用企业管理器、系统存储过程和SQL语句来完成如下内容。
(1)使用企业管理器在你的SQLServer中创建一个登录名teacher,且
它使用SQLServer认证;
能够创建和修改数据库;
•能访问pubs数据库、STUDENT数据库和OrderCenter数据库;
•并且能够在这些库中分配语句和对象权限;
对OrderCenter数据库中的products表具有插入、修改和删除的权限。
(2)在查询分析器中使用系统存储过程和SQL语句完成下列任务:
创建一个登录名student,口令为123,缺省数据库为STUDENT;
将其加入到STUDENT数据库的用户中;
将其加入到服务器的sysadmin角色中;
将其加入到STUDENT数据库的db_owner角色中;
授予他在STUDENT数据库中创建视图、创建表的权限;
授予他对STUDENT数据库中的study表具有所有权限,且可将这些权限授予他人;
撤销他对STUDENT数据库中的study表的修改权限;
•禁止他对STUDENT数据库中的study表的删除权限。
(1)SQLServer采用几级安全验证?
简述其安全模式?
(2)简述服务器角色和数据库角色的作用?
数据库安全与保护——数据完整性(2学时,上机实验)
通过本实验使学生理解数据库完整性约束的概念,掌握声明型数据完整性和过程型数据完整性的实现方法。
完整性的概念、约束、规则。
要求学生参考教材第六章174至184页内容,在计算机上使用企业管理器和SQL语句来完成如下内容。
(1)在查询分析器中使用CREATETABLE语句,在STUDENT数据库中创建符合下表中完整性约束条件的学生表S。
列名
默认值
键/索引
说明
SNO
CHAR(6)
否
主键、聚集索引
SN
CHAR(8)
AGE
NUMERIC
(2)
SEX
CHAR
(2)
DEPT
CHAR(10)
(2)在查询分析器中使用CREATETABLE语句,在STUDENT数据库中创建符合下表中完整性约束条件的选课表SC。
检查
组合主键、聚集索引
外键student(sno)
CNO
外键course(cno)
SCORE
0~100
注:
组合主键、聚集索引定义在SNO和CNO上;
外键上还需定义一个非聚集索引。
(3)使用企业管理器为STUDENT数据库创建一个age_rule规则,并将其绑定到学生表S的AGE列,使AGE在18到50之间取值。
(4)使用企业管理器为STUDENT数据库创建一个score_default默认,并将其绑定到选课表SC的SCORE列,设置该列的默认值为0。
(5)使用企业管理器为STUDENT数据库创建一个TestTab,列名和数据类型自定,利用设计表窗口和属性对话框创建和修改约束,掌握企业管理器建立主键约束、外键约束和检查约束等方面的技能。
(1)SQLServer实现数据完整性有哪两种方法?
(2)SQLServer有几种约束类型?
它们分别是什么?
数据库安全与保护——数据库的一致性和并发性(1学时,上机实验)
通过本实验使学生理解数据库的一致性和并发性概念,掌握SQLServer的加锁机制。
一致性和并发性概念,封锁技术、封锁粒度和强制封锁类型。
通过机房的计算机和投影设备演示、简要讲解怎样使用查询分析器执行系统存储过程和SQL语句来了解SQLServer的加锁机制。
要求学生参考教材第六章195至204页内容,在计算机上使用查询分析器执行系统存储过程和SQL语句来完成如下内容。
在本实验中,你将执行查询和数据修改语句,并且执行sp_lock来决定SQLServer在表上设置何种类型的锁。
为每条语句做以下操作:
USEpubs
执行BEGINTRAN
执行语句
执行sp_lock
执行ROLLBACKTRAN
(1)执行sp_lock,现在是什么类型的锁?
锁类型数据库名
()()
(2)UPDATEauthors
SETau_lname=’Linker’
WHEREau_id=’172-32-1176’
(3)UPDATEauthors
SETau_lname=’Linker’
WHEREcontract=0
(4)SELECT*
FROMauthors
HOLDLOCK
(5)SELECT*
(6)DELETEsales
WHEREstor_id=’6380’
(7)DELETEsales
WHEREqty=20
(8)试对上述实验的结果进行分析,总结SQLServer的加锁机制。
(1)说明排他锁与共享锁之间的区别?
(2)为什么要引入意向锁?
意向锁的含义是什么?
数据库安全与保护——数据库的备份与恢复(1学时,上机实验)
通过本实验使学生掌握数据库备份的方法和数据库恢复的方法。
数据转储、日志的概念,数据库备份与恢复技术。
通过机房的计算机和投影设备演示、简要讲解怎样使用企业管理器、查询分析器进行数据库备份与恢复。
要求学生参考教材第六章213至218页内容,在计算机上使用查询分析器、企业管理器完成如下内容。
(1)通过查询分析器,为STUDENT数据库创建一个全数据库备份,要求立即执行,备份设备叫STUDENT_Bak_Full。
(2)使用企业管理器,为STUDENT数据库创建一个增量备份,要求在11:
00执行备份,备份设备叫STUDENT_Bak_Differential。
(3)使用企业管理器,在STUDENT数据库上创建一个日志备份,要求从上午11:
00到11:
30之间每隔10分钟做一次备份,备份设备叫STUDENT_Bak_Log。
(4)分别使用企业管理器和查询分析器,从上面所做的备份中恢复STUDENT数据库以及它的事务日志。
(1)SQLServer有几种备份和几种恢复模型?
(2)使用文件备份有什么优点?
存储过程和触发器(2学时,上机实验)
通过本实验使学生掌握存储过程、触发器的基本概念和创建方法。
存储过程、触发器的基本概念、游标,创建和管理存储过程、触发器。
通过机房的计算机和投影设备演示、简要讲解怎样使用企业管理器、查询分析器创建、修改和删除存储过程、触发器的方法。
要求学生参考教材第七章222至251页内容,在计算机上使用查询分析器、企业管理器完成如下内容。
(1)在pubs数据库中创建一个存储过程,当操作者运行它并传递作者的姓的任一部分后,返回所有关于这个作者的地址信息。
(2)在pubs数据库中创建一个触发器,只有当用户修改sales表的qty列的值时,触发器才被激活,用于调整titles表的ytd_sales列的值;
如果用户修改的不是qty列的值,则触发器不被激活。
(1)简述存储过程的优点。
(2)简述触发器的工作原理?
嵌入式SQL的使用(2学时,上机实验)
通过本实验使学生掌握嵌入式SQL的C程序的开发方法或者学生自己掌握的其他开发工具嵌入式SQL的程序的开发方法。
开发环境的配置、宿主语言的掌握程度、嵌入式SQL语句。
通过机房的计算机和投影设备演示一个简单的嵌入式SQL的程序例子。
要求学生参考教材第七章251至263页内容,了解嵌入式SQL的使用。
(1)实验准备
(a)安装C程序开发环境或使用学生自己掌握的其他开发工具,例如面向对象的开发工具VisualBasic、PowerBuilder、Delphi等;
(b)按照7.3.2节中介绍的方法配置C程序开发环境,并将SQLServer2000的预编译器NSQLPREP.EXE从安装光盘的X86\BINN目录下复制到D盘中。
(2)实验内容
(a)对Student数据库的Student表逐行显示name为“张斌”的记录信息,并询问用户是否删除
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 上机 实验 指导
![提示](https://static.bdocx.com/images/bang_tan.gif)