学院课程实验指导书
科目:数据库(SQL) 时间: 第 页
新疆警察学院课程实验指导书
注意:每一次的实验步骤要认真填写。
第二篇:数据库实验指导书(新)
Database System Concepts
数据库系统概论
实验指导书
隆承志 编著
计算机科学与工程学院
课程名称:数据库系统概论
英文名称:Database System Concepts
总学时:64 学 分:3 实验学时:16 上机学时:16
课程类别:试验 课程性质:必修
适用专业:计算机各类专业
授课实验室:
实验(上机)教学目的与基本要求
《数据库系统概论》是计算机学科各专业的一门重要专业基础课程,是计算机科学与技术专业、网络工程四年制本科的必修课程。本课程主要学习关系数据库系统,并以大型关系数据库管理系统sql server 为实例。通过本课程的学习,了解数据库系统的基本概念、基本理论,掌握关系数据库的相关知识和技术,初步掌握数据库设计方法,并能用数据库系统建立数据库及简单的应用;通过实际的上机操作,熟悉sql server操作环境,掌握关系数据库标准语言SQL、规范化理论。能采用高级语言进行简单应用系统的实现,能进行用户的授权与管理。
实验(上机)教学方式与考核方式
教学方式:上机操作
考核方式:上机操作+实验报告
实验(上机)指导书和参考书
参见自编的《数据库系统概论实验指导书》
主要仪器设备
安装数据库的个人电脑或实验室电脑。
实验一 SQL Server系统的安装
一、实验目的
让学生了解如何安装SQL Server 2000数据库系统。
二、实验内容
在Windows系统上安装SQL Server 20## Personal或者开发版本。
三、实验步骤
1、检查计算机系统是否达到安装、运行SQL Server 2000的硬件需求
(1)计算机
Inter及其兼容计算机,Pentium 166Mz或者更高处理器或DEC Alpha和其兼容系统。
(2)内存(RAM)
企业版最少64MB内存,其他版本最少需要32MB内存,建议使用更多的内存。
(3)硬盘空间
完全安装(Full)需要180MB的空间,典型安装(Typical)需要170MB的空间,最小安装(Minimum)需要65MB的空间。
2、安装、运行SQL Server 2000的软件需求
SQL Server 2000企业版必须运行于安装Windows NT Server Enterprise Edition 4.0或者Windows2000 Advanced Server以及更高版本的操作系统下。
SQL Server 2000标准版必须运行于安装Windows NT Server Enterprise Edition 4.0、Windows NT Server 4.0、Windows 20## Server以及更高版本的操作系统下。
SQL Server 20## 个人版可在多种操作系统下运行,如可运行于Windows 9x, Windows NT 4.0或Windows 2000的服务器版或工作站版的操作系统下。
SQL Server 20## 开发者版可运行于上述Windows 9x以外的所有操作系统下。
3、在自动运行界面下选择安装数据库系统,包括服务器端工具与客户端工具。
4、熟悉系统数据库Master、Model、Msdb、Tempdb、Pubs和Northwind六个系统数据库,并了解它们的功能。
5、熟悉数据库中的各个系统表及其相应的功能。
6、找到数据库文件的存储路径、
注:如果计算机中安装有旧的SQL Server版本,那么安装SQL Server 2000时需要做以下工作,以确保系统能退回到升级前的状态。
1. 检查操作系统是否满足安装要求。
2. 检查磁盘空间是否足够安装新的SQL Server 2000版本。
3. 备份包括系统数据库在内的所有数据库。
4. 备份操作系统的注册表,用于恢复原有的SQL Server。
5. 关闭任何与旧的SQL Server相关的应用程序。
6. 安装SQL Server 2000数据库管理系统。
四、思考题
l SQL Server如何利用WinNT系统的身份验证代替SQL Server系统的身份验证。
l 为什么要安装Personal版本,安装Enterprise版可以吗?为什么?
实验二 数据库启动和实用工具使用
一、实验目的
让学生了解如何启动SQL Server系统,了解各种工具的用法。
二、实验内容
打开SQL Server服务,验证各类数据库实用工具。
三、实验步骤
1、运行服务管理器,选择相应服务器和相关服务,开启SQL Server服务。
SQL Server 服务管理器是在服务器端实际工作时最有用的实用程序。服务管理器用来启动、暂停、继续和停止数据库服务器的实时服务,其提供的服务包括:SQL Server、SQL Server Agent、MSDTC(Microsoft Distributed Transaction Coordinator,微软分布式事务协调器)。
2、运行企业管理器,查看各类选项和界面,作一些简单的操作。
企业管理器是基于一种新的被称为微软管理控制台(Microsoft Management Console)的公共服务器管理环境,它是SQL Server中最重要的一个管理工具。企业管理器不仅能够配置系统环境和管理SQL Server,而且由于它能够以层叠列表的形式来显示所有的SQL Server对象,因而所有SQL Server对象的建立与管理都可以通过它来完成。
⑴新建一个数据库student。
⑵在student数据库中建立一个名叫student的数据表(包括学号、姓名年龄、性别、出生日期等)。
⑶打开student表,输入一些学生的数据。
⑷给当前数据库建立的登录账号。
⑸给新建的账号设定一定的权限。
⑹在查询分析器中使用新建的账号登录,测试其权限设置的效果。
3、打开六个系统数据库,查看,了解其作用。
4、运行查询分析器,熟悉各种操作环境。
SQL Server 2000新的图形化查询分析器用于输入和执行Transaction-SQL语句,并且迅速查看这些语句的结果,以分析和处理数据库中的数据。这是一个非常实用的工具,对掌握SQL语言,深入理解SQL Server的管理工作有很大帮助。
5、运行“导入和导出数据”向导,了解其作用。
导入和导出数据采用DTC 导入/导出向导来完成。此向导包含了所有的DTC(Data Transformation Services)工具,提供了在OLE DB数据源之间复制数据的最简捷的方法。
6、对网络使用工具作简单的了解。
7、了解SQL Server 2000联机丛书的使用方法。
四、思考题
l 企业管理器与查询分析器有什么区别。
实验三 建立数据库及基本表
一、实验目的
1、了解SQL Server数据库的逻辑结构和物理结构;
2、了解SQL Server的基本数据类型;
3、学会在企业管理器中创建数据库和表;
4、使用SQL查询分析器用CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。
二、实验内容
1、创建数据库和查看数据库属性。2、创建表。3、查看和修改表结构。4、熟悉企业管理器和查询分析器工具的使用方法
三、实验步骤
1、在企业管理器中创建数据库和数据表。
(1) 使用企业管理器建立图书管理数据库,数据库名为BookManage,初始大小为 10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。数据库的逻辑文件名和物理文件名均采用默认值。
详细步骤:
(2) 在企业管理器中查看图书管理数据库的属性,将数据库的数据文件初始大小修改为15M。
(3) 通过企业管理器,在建好了图书管理数据库BookManage中建立图书(book)、读者(reader)和借阅(borrow)3个表,其结构为:
图书(书号,类别,出版社,作者,书名,定价);读者(编号,姓名,单位,性别,电话);
借阅(书号,读者编号,借阅日期)。
创建上述三个表的步骤:
三个表各个字段的数据类型填入下表:
(4) 利用企业管理器向表中输入数据(每个表至少输入五条记录)。
2、在查询分析器中创建数据库和数据表
(1)创建数据库Lms 的sql语句:
(2) 在数据库Lms下,创建基本表学生表student(sno,sname,ssex,sage,sdept)的sql语句:
创建基本表课程表course(cno,cname, ccredit)的sql语句:
创建基本表成绩表sc(sno,cno,grade)的sql语句:学号sno、课程号cno定义参照约束。
(3) 在窗口下依次分别键入DROP TABLE Student及DROP TABLE SC命令,运行后观察结果。
用语言描述运行结果,如何正确删除这两张表:
删除student和sc表后,再重新运行创建student.sql和sc.sql,并观察结果。
(4) 利用查询分析器编写SQL语句修改表。
①在student表中增加一个新的字段“smerit”(特长),数据类型为char(30);该sql语句:
②修改student表中sdept字段的数据类型为varchar(20),其sql语句
四、实验小结
实验四 数据查询
一、实验目的
1、掌握查询分析器的使用方法,加深对SQL的语句的理解;
2、使用查询分析器用SELECT语句进行数据查询;
3、熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二、实验内容
1、完成简单查询操作。该实验包括投影、选择条件表达,数据排序,使用临时表等。
2、完成连接查询、嵌套查询、组合查询和统计查询等操作。
三、实验步骤
1、熟悉pubs数据库中的三个用户表:
employee(emp_id,fname,minit,lname,job_id,job_lvl,pub_id,hire_date),
job(job_id,job_desc,min_lvl,max_lvl), publishers(pub_id,pub_name,city,state,country)。
他们分别是关于雇员、职务和出版社的基本表。
2、在查询分析器在窗口下用SELECT语句完成单表查询:
①查询全体出版社的详细记录;
Sql语句:
查询结果描述:
②查询所有工作的job_id为9901的职工的职工编号;
Sql语句:
查询结果描述:
③查询工作的job_id小于9901的职工的职工编号;
Sql语句:
查询结果描述:
④查询在Germany和France的出版社的名字和所在城市;
Sql语句:
查询结果描述:
⑤查询lname为Anabela的雇员的fname、job_id和hire_date;
Sql语句:
查询结果描述:
⑥查询lname的前两个字符为cr的职员的编号和fname;
Sql语句:
查询结果描述:
⑦查询job_id为5的职员的编号和min_lvl,查询结果按min_lvl的降序排列;
Sql语句:
查询结果描述:
⑧查询job_id为13的职员中min_lvl最高的职员的fname 和lname。
Sql语句:
查询结果描述:
3、在查询分析器在窗口下用SELECT语句完成连接(嵌套)查询:
①查询各个工作号与相应的工作人数;
Sql语句:
查询结果描述:
②查询每个职工及其工作的描述(job_desc)的情况;
Sql语句:
查询结果描述:
③查询每个职工及其工作职务名其及所在出版社的名字;
Sql语句:
查询结果描述:
④查询与“Annette”(fname)在同一个出版社工作的职工的fname;
Sql语句:
查询结果描述:
⑤查询在美国工作的员工中工作职务为Editor的员工的fname 和lname;
Sql语句:
查询结果描述:
⑥查询在New Moon Books这个出版社工作的员工中job_lvl大于100的职工的姓名和其所作工作的描述;
Sql语句:
查询结果描述:
4、在查询分析器在窗口下用SELECT语句完成集合查询:
查询job_id为5和job_id为6的职工的姓名和职工所在出版社的名字
Sql语句:
查询结果描述:
四、实验小结
实验五 数据更新、创建与修改
一、实验目的
1、学会使用INSERT、UPDATE、DELETE等SQL语句进行数据更新;
2、学会使用CREATE、DROP等SQL语句创建和删除视图。
二、实验内容
1、在查询分析器中使用INSERT、UPDATE、DELETE语句进行数据更新。
2、在查询分析器中使用CREATE、DROP语句创建和删除视图。
三、实验步骤
1、利用企业管理器在数据库LMS的三个表中分别插入以下数据:学生表student:
课程表course:
成绩表sc:
2、在查询分析器中:
(1)选择数据库LMS,用INSERT语句向学生表student中插入一个新生记录(学号:95020;姓名:陈东;性别:男;所在系:IS;年龄:18)。
Sql语句:
(2)在数据库LMS中建立一个新表deptage,其中一个字段存放系名,另一个字段存放相应得学生平均年龄;然后对学生表student按系分组求平均年龄,再把系名和平均年龄存入新表中。
Sql语句:
3、在查询分析器中用UPDATE语句更改表中数据。
(1)将所有学生的年龄都增加1岁。
Sql语句:
(2)将IS系全体学生的成绩置零。
Sql语句:
(3) 分别运行SQL语句,观察运行结果。
Sql语句:
4、在查询分析器中用DELETE语句删除表中数据。
(1)删除学号为“95020”的学生记录。
Sql语句:
(2)删除MA系所有学生的成绩记录。
Sql语句:
(3) 分别运行SQL语句,观察运行结果。
5、在查询分析器中用CREATE语句建立视图。
(1)建立IS系学生的视图IS_student。
Sql语句:
(2)建立IS系选修了1号课程的学生的视图IS_s1。
Sql语句:
(3)建立IS系选修了1号课程且成绩载90分以上的学生的视图IS_s2。
Sql语句:
(4) 分别运行SQL语句,观察运行结果。
6、在查询分析器中用DROP语句删除视图IS_student,并观察结果。
Sql语句:
运行结果描述:
四、实验小结
实验六 数据完整性
一、实验目的
在课程结束时,使用SQL查询分析器用PRIMARY KEY、CHECK、FOREIGN KEY……REFERENCES、NOT NULL、UNIQUE等关键字验证SQL2000的实体完整性、参照完整性及用户定义完整性。
二、实验内容
1、在查询分析器中用PRIMARY KEY子句保证实体完整性;
2、在查询分析器中用FOREIGN KEY……REFERENCES子句保证参照完整性;
3、在查询分析器中用短语NOT NULL、UNIQUE、CHECK、DEFAULT保证用户定义完整性。
三、实验步骤
1、 在企业管理器中为实验一所建立的数据库BookManage各表加完整性约束:
(1) 定义每个表的主键;
详细步骤:
(2) 借阅表与图书表间、借阅表与读者表之间的ForeignKey(外码)约束;
详细步骤:
(3) 实现借阅表的书号和读者编号的UNIQUE(惟一性)约束;
详细步骤:
(4) 实现读者性别只能是“男”或“女”的check(检查)约束;
详细步骤:
(5) 图书表的定价字段的缺省值为0
详细步骤:
2、在查询分析器中创建数据库和数据表
(1) 在查询分析器中,编写SQL语句创建名为“学生选课数据库系统”数据库。
Sql语句:
(2) 在该数据库下建如下三个基本表:学生(学号,姓名,性别,年龄,所在系);
课程 (课程号,课程名, 学分); 选课(学号,课程号,成绩)。
上述表中的各字段的数据类型及其宽度为:
学号 CHAR(5), 姓名 CHAR(8), 性别CHAR(2), 年龄INT, 所在系 CHAR(20) ;
课程号 CHAR(5), 课程名 CHAR(20), 学分 INT;
学号 CHAR(5), 课程号 CHAR(5), 成绩 INT。
在定义表的语句中要定义出以下约束:
(1) 学生表定义主码约束;姓名不能为空;性别只能选男和女且性别的缺省值为男;年龄缺省值为18;
(2) 课程表定义主码约束;课程名不能为空;学分缺省值为2;
(3) 选课表定义主码约束和外码约束;成绩的缺省值为0。
运行并观察结果。
创建学生表的sql语句:
创建课程表的sql语句:
创建选课表的sql语句:
四实验小结
实验七 存储过程与触发器的应用
一、实验目的
1、掌握创建存储过程的方法和步骤。
2.掌握存储过程的使用方法。
3.掌握创建触发器的方法和步骤。
4.掌握触发器的使用方法。
二、实验内容
1、存储过程的创建、执行和删除;
2、触发器的创建、执行和删除。
三、实验步骤
1、存储过程的创建、执行和删除。
(1)使用LMS数据库中的student表、course表、sc表创建一个带参数的存储过程—sp_getinfo。该存储过程的作用是:当任意输入一个学生的姓名时,将从三个表中返回该学生的学号、选修的课程名称和课程成绩。
sp_getinfo的创建语句:
(2)执行sp_getinfo存储过程,查询“刘刚”的学号、选修课程和课程成绩。
执行语句:
结果描述:
(3)使用系统存储过程sp_helptext查看存储过程sp_getinfo的文本信息。
查看结果描述:
(4)使用LMS数据库中的student表,为其创建一个加密的存储过程—sp_getisinfo。该存储过程的作用是:当执行该存储过程时,将返回IS系学生的所有信息。
sp_getisinfo创建语句:
(5)执行sp_getisinfo存储过程,查看IS系学生的情况。
执行语句:
结果描述:
(6)删除sp_getisinfo存储过程。
删除语句:
2、触发器的创建、执行和删除。
(1)在LMS数据库中建立一个名为tr_insertstudent的INSERT触发器,存储在sc表中。该触发器的作用是:当用户向sc表中插入记录时,如果插入了在student表中没有的学生学号sno,则提示用户不能插入记录,否则提示记录插入成功。
tr_insertstudent的创建语句:
(2)为LMS数据库中的student表创建一个名为tr_deletestudent的DELETE触发器,该触发器的作用是禁止删除student表中的记录。
tr_deletestudent的创建语句:
(3)为LMS数据库中的sc表创建一个名为tr_updategrade的UPDATE触发器,该触发器的作用是禁止更新sc表中的grade字段的内容。
tr_updategrade的定义语句:
(4)删除tr_updategrade触发器。
删除tr_updategrade触发器的命令:
四、实验小结
实验八 备份和恢复数据库
一、实验目的
理解数据库备份的过程和属性设置,掌握使用企业管理器备份数据库的方法。
二、实验内容
使用SQLServer2000企业管理器备份和恢复数据库LMS.
三、实现步骤
(1)打开企业管理器,在控制面板目录中选择数据库LMS。
(2)单击鼠标右键,从弹出菜单中选择命令"所有任务〉备份数据库"。
(3)在出现的"SQLServer备份"对话框中选择"常规"选项卡。
(4)在该选项卡中的"名称"文本框中键入"LMS数据库备份"。
(5)在"描述"文本框中键入"备份集1"。
(6)在"备份"对话框中选中"数据库-完全"选项。
(7)单击"添加"按钮,在弹出的对话框中选择"备份设备",然后从下拉列表中选择备份使用的备份设备(注意:如果没有现成的备份设备,应在备份以前创建一个 具体方法参见相关章节)。
(8)单击"重写现有媒体"选项按钮。
(9)单击""选项"选项卡,在该选项卡中选中"完成后验证备份"复选框。
(10)单击"确定"按钮,出现"备份进度"对话框,备份完成后,将弹出消息框"备份操作及其验证已成功完成”。
(11)单击"确定"完成数据库的备份。
(12)完成数据库的还原,方法如下:
从企业管理器的树状目录窗口中选择需要还原的数据库LMS,单击鼠标右键,从弹出菜单中选取命令"所有任务/还原数据库",打开"还原数据库”对话框。
然后在该对话框中选择"还原--从设备,单击"选择设备"按钮,并从弹出的对话框中选择备份设备LMS_backup。
最后选择"还原备份集"下的"数据库---完全",单击"确定"按钮执行数据库的还原。
四、实验小结
实验九 SQL语言作业练习验证试验
一、实验目的
熟练掌握SQL实验各类查询的实现。
二、实验内容
请参照SQL语言布置的作业,完成给定的内容。
三、实现步骤
请大家验证所做内容,提交实验报告。