数据库实验指导书(试用版)二零零六年三月目录引言 1一、课程实验目的和基本要求 1二、主要实验环境 1三、实验内容 1实验1 数据库模式设计和数据库的建立 2一、教学目的和要求 2二、实验内容 2三、实验步骤 2四、思考与总结 3实验2 数据库的简单查询和连接查询 4一、教学目的和要求 4二、实验内容 4三、实验步骤 4四、思考与总结 5实验3 数据库的嵌套查询和组合统计查询 6一、教学目的和要求 6二、实验内容 6三、实验步骤 6四、思考与总结 7实验4 视图与图表的定义及数据完整性和安全性 8一、教学目的和要求 8二、实验内容 8三、实验步骤 8四、思考与总结 9实验5 简单应用系统的实现 10一、教学目的和要求 10二、实验内容 10三、实验步骤 10四、思考与总结 10附录1:数据库实验报告格式 11附录2:SQL Server 2000使用指南 121 SQL Server 2000简介 122 SQL Server 2000的版本 123 SQL Server 2000实用工具 124 创建数据库 155 创建和修改数据表 176 创建索引 227 存储过程 238 触发器 259 备份和恢复 2710 用户和安全性管理 28引言数据库技术是一个理论和实际紧密相连的技术,上机实验是数据库课程的重要环节,它贯穿于整个―数据库阶段‖课程教学过程中。
一、课程实验目的和基本要求上机实验是本课程必不可少的实践环节。
学生应在基本掌握各知识点内容的基础上同步进行相关实验,以加深对知识的理解和掌握,达到理论指导实践,实践加深理论的理解与巩固的效果。
数据库课程上机实验的主要目标是:通过上机操作,加深对数据库系统理论知识的理解。
通过使用具体的DBMS,了解一种实际的数据库管理系统,并掌握操作技术。
通过实际题目的上机实验,提高动手能力,提高分析问题和解决问题的能力。
实验在单人单机的环境下,在规定的时间内,由学生独立完成。
出现问题时,教师要引导学生独立分析、解决,不得包办代替。
上机总学时不少于12学时。
二、主要实验环境操作系统为Microsoft Windows 2000/XP。
数据库管理系统可以选择:(1)Microsoft SQL Server 2000标准版或企业版(2)Microsoft Access2000(3)金仓数据库KingbaseES。
三、实验内容本课程实验主要包括数据库的模式设计,数据库、表、视图、索引的建立与数据的更新;关系数据库的查询,包括连接查询、嵌套查询、组合查询等;数据库系统的实现技术,包括事务的概念及并发控制、完整性和安全性实现机制;简单数据库应用系统的设计与实现。
实验1 数据库模式设计和数据库的建立一、教学目的和要求根据一个具体应用,独自完成数据库模式的设计。
熟练使用SQL语句创建数据库、表、索引和修改表结构。
熟练使用SQL语句向数据库输入数据、修改数据和删除数据的操作。
二、实验内容对实际应用进行数据库模式设计(至少三个基本表)。
创建数据库、表、确定表的主码和约束条件,为主码建索引。
查看数据库属性,查看和修改表结构。
三、实验步骤1、基本操作实验:通过具体一个DBMS中建立学生选课数据库。
在DBMS建好的学生选课数据库中建立学生、课程和选课三个表,其结构为:学生表:Student(Sno,Sname,Ssex,Sage,Sdept),其主码为Sno;课程表:Course(Cno,Cname,Cpno,Ccredit),其主码为Cno;选课表:SC(Sno,Cno,Grade),其主码为(Sno,Cno)。
要求为属性选择合适的数据类型,定义每个表的主码,是否允许空值和默认值等列级数据约束。
建立学生、课程和选课3个表的主码约束;选课表与学生表、选课表和课程表之间的外码约束,通过操作予以实现。
在学生选课数据库的学生、课程和选课3个表中各输入10条记录。
要求记录不仅满足数据约束要求,还要有表间关联的记录。
实现对学生选课数据库的学生、课程和选课3个表中数据的插入、删除和修改操作。
2、提高操作实验:将学生选课数据库、库中的表、索引和约束用SQL表达,实现建库、建表、建立表间联系和建立必要的索引、约束的操作。
四、思考与总结(1)指出学生选课数据库的主码、外码和数据约束。
(2)学生选课数据库的选课表中,属性学号、课程号采用数值型,还是采用字符型的,采用哪种类型最好。
(3)为什么要建立索引,建立多少索引合适。
(4)为什么不能随意删除被参照表中的主码。
实验2 数据库的简单查询和连接查询一、教学目的和要求(1)加深对标准SQL查询语句的理解。
(2)熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二、实验内容(1)简单查询操作,该实验包括投影、选择条件表达,数据排序等。
(2)连接查询操作,该实验包括等值连接、自然连接、求笛卡尔积、一般连接、外连接、内连接、左连接、右连接和自身连接等。
三、实验步骤1、基本操作实验:查询计算机系学生的学号和姓名。
查询选修了数学课的所有学生名单。
查询年龄小于23岁的女同学的学号和姓名。
查询所有姓王的学生。
查询全体学生的姓名和出生年份。
查询选修了课程的学生学号。
查询每个学生的情况以及他(她)所选修的课程号。
2、提高操作实验:查询学生的学号、姓名、选修的课程名及成绩,并按成绩的降序排列。
查询选修1号课程且成绩在80-90分之间的学生学号和成绩。
查询选修1号课程且成绩在90分以上的学生学号、姓名及成绩。
查询每一门课(名称)的间接先行课名称(即先行课的先行课)。
查询至少选修了1、2号课程的学生姓名。
四、思考与总结输入SQL语句时应注意,语句中均使用西文操作符号。
学会查询结果的几种处理方式。
如何提高数据查询和连接速度。
对于常用的查询形式或者查询结果,怎样处理好。
实验3 数据库的嵌套查询和组合统计查询一、教学目的和要求加深对SQL语言的嵌套查询语句的理解。
熟练掌握数据查询中分组、统计、计算和组合的操作方法。
二、实验内容(1)使用IN、比较符、ANY或ALL和EXITS操作符进行嵌套查询操作。
(2)分组查询实验。
该实验包括分组条件表达、选择组条件表达的方法。
(3)使用函数查询实验。
该实验包括统计函数和分组统计函数的使用方法。
(4)组合查询,计算和分组计算实验。
三、实验步骤1、基本操作实验:查询选修了数据库的学生学号和姓名。
查询1号课程的成绩高于张三的学生学号和成绩。
查询其他系中年龄小于计算机系年龄最大者的学生。
查询没有选修2号课程的学生姓名。
查询选修1号课程的学生最低分。
统计男女同学的人数。
求各个课程名称及相应的选课人数。
2、提高操作实验:检索选修2号课程的学生中成绩最高的学生的学号。
查询选修了全部课程的学生的姓名。
查询平均成绩最高的学生学号和姓名。
查询1号课程成绩高于所有课程总平均成绩的学生姓名。
查询有3门以上课程是80分以上的学生的学号及(80分以上)的课程数。
四、思考与总结输入SQL语句时应注意,语句中均使用西文操作符号。
在使用SQL语句时,注意语句的层次嵌套关系和括号的配对使用问题。
子句WHERE<条件>表示元组筛选条件,子句HA VING<条件>表示组选择条件。
组合查询的字句间不能有语句结束符。
子句HA VING<条件>必须和GROUP BY<分段字段>子句配合使用。
试用多种形式表示实验中的查询语句,并进行比较。
组合查询语句是否可以用其他语句代替,有什么不同。
使用GROUP BY<分段条件>子句后,语句中的统计函数的运行结果有何不同。
实验4 视图的定义及数据完整性一、教学目的和要求使学生掌握视图创建方法,加深对视图的理解。
加深对数据的完整性的理解。
学会创建和使用规则、缺省和触发器。
二、实验内容创建、查看、修改和删除视图。
创建触发器,并使用触发器。
创建存储过程并执行。
三、实验步骤1、基本操作实验:按下列SQL描述的视图定义,创建IS_S1视图。
CREATE VIEW IS_StudentAS SELECT Sno,Sname,SageFROM StudentWHERE Sdept=‘IS‘;创建触发器,并在查询分析器中执行一个可以引起触发器执行的语句来使触发器执行,并观察结果。
例如,用CREATE TRIGGER T_S ON Student FOR DELETE As <SQL语句>定义了触发器,则执行DELETE Student WHERE<条件>语句。
用SQL写出实验操作语句。
2、提高操作实验:针对IS_S1视图完成下列查询:a) 在信息系学生的视图中找出年龄不小于21岁的学生。
b) 查询信息系选修了1号课程的学生。
建立一个学生与选课表间,为维护参照完整性而使用的级联删除触发器、级联修改触发器和受限插入触发器。
建立并调用一个带参数的存储过程并在查询分析器中执行,观察结果。
四、思考与总结参照表和被参照表之间的关系,主码和外码之间的关系。
各种触发器的含义,主要功能是什么。
实验5 简单应用系统的实现一、教学目的和要求综合运用前面掌握的内容并进行数据库综合应用。
选定任一种开发工具(PB、Delphi、VB、VC等),设计并实现一个简单的数据库应用系统,包括数据的插入、删除、修改、查询、统计等功能,做到界面友好、使用方便。
通过实践设计使学生加深理论的理解,从而掌握数据库设计的方法和步骤,并通过上机操作锻炼学生的动手能力。
二、实验内容进行需求分析画出数据流图;进行概念结构设计画出实体联系模型;进行逻辑结构设计写出关系模式;进行物理结构设计并写出评价,写出评价结果;写出功能模块图;上机实施并调试运行。
三、实验步骤参考有关关系数据库系统和系统开发工具方面的有关技术书籍。
四、思考与总结在数据库开发的过程中的体会与提高。
附录:数据库实验报告格式专业(类)班级姓名学号日期一、实验名称:二、实验目的和要求:三、实验程序源代码:四、总结与体会:附录2:SQL Server 2000使用指南1 SQL Server 2000简介SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。
该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等。
优点可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。
2 SQL Server 2000的版本SQL Server 2000 的常见版本如下:企业版(Enterprise Edition),支持所有的SQL Server 2000 特性,可作为大型Web 站点、OL TP 联机事务处理以及数据仓库系统等的产品数据库服务器。