数据库系统原理实验指导书.docx
- 文档编号:10158417
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:22
- 大小:24.59KB
数据库系统原理实验指导书.docx
《数据库系统原理实验指导书.docx》由会员分享,可在线阅读,更多相关《数据库系统原理实验指导书.docx(22页珍藏版)》请在冰点文库上搜索。
数据库系统原理实验指导书
计算机科学与技术学院
《数据库系统原理》
实验指导书
武彤编写
信息安全及其相关
贵州大学
二OO七年八月
前言
本课程介绍数据库系统尤其是关系数据库系统的基本原理,介绍数据库系统的组成、数据库的设计方法、关系数据库语言及关系数据库管理系统内核部分的处理思想。
为配合理论课的教学,设立了验证型实验及设计型实验,目的是使学生加强对概念的理解;强调学生从系统的整体角度来权衡不同方法和技术的优劣,根据具体的应用环境灵活地应用相关的技术建立有效的数据库系统。
通过实验使用某种数据库管理系统设计开发一种应用数据库来加深对原理和概念的理解。
实验内容是选定一个具体的应用环境,对此环境构造最优的数据库模式,设计有效的应用程序,使之能够有效地存储数据,满足一般的信息要求和处理要求。
要求写出实验报告,对于验证性实验,内容包括:
实验目的、实验要求、实验内容、实验步骤、实验结果分析。
对于设计性实验,内容包括:
实验目的、实验要求、实验内容、实验设计思想、实验设计说明(DBMS及环境选择、结构设计及功能实现情况)。
通过本课程的实验,学生可以熟悉某一个特定的数据库管理系统,学会在数据库管理系统中建立数据库及数据库表,学会使用SQL语言对数据库中的数据进行增、删、改及查询操作,学会对用户进行权限控制等操作。
同时通过设计型实验,熟练掌握数据库设计的全过程,为后续课程设计打下良好的基础。
本实验指导书的内容和理论课程的教学环节紧密结合,由浅入深的引导学生逐步完成每一个实验。
学生通过阅读实验指导书,就能独立完成实验,通过实验加强了对数据库系统原理及概念的理解,起到理论联系实际的作用。
本实验指导书在编写过程中难免存在问题和错误,希望在使用的过程中不断的收集意见和建议,进行修改完善。
目录
1、实验一:
(一)数据库定义············································································4
2、实验一:
(二)数据库的建立与维护·······························································7
3、实验二:
数据库的简单查询和连接查询·························································9
4、实验三:
数据库的嵌套查询···········································································12
5、实验四:
数据库的组合查询和统计查询·························································14
6、实验五:
数据库的视图和图表的定义及使用·················································16
7、实验六:
数据库系统设计··············································································19
8、实验七:
SQLServer的其它功能实验····························································21
9、实验报告基本内容要求················································································23
10、实验报告格式·····························································································24
实验一:
(一)数据库定义
实验学时:
1学时
实验类型:
验证
实验要求:
必修
一、实验目的
要求学生熟练掌握和使用SQL语言、SQLServer企业管理器创建数据库、表、索引和修改表结构,并学会使用SQLServer查询分析器接收SQL语句和进行结果分析。
二、实验内容
1、创建数据库和查看数据库属性。
2、创建表、确定表的主码和约束条件,为主码建索引。
3、查看和修改表结构。
4、熟悉SQLServer企业管理器和查询分析器工具的使用方法。
三、实验原理、方法和手段
1、基本操作实验
(1)使用企业管理器建立图书读者数据库。
(2)在企业管理器中查看图书读者数据库的属性,并进行修改,使之符合要求。
(3)通过企业管理器,在建好的图书读者数据库中建立图书、读者、借阅3个表,其结构为:
图书(书号,类别,出版社,作者,书名,定价);
读者(编号,姓名,单位,性别,电话);
借阅(书号,读者编号,借阅日期)
要求为属性选择合适的数据类型,定义每个表的主码,是否允许空值和默认值等列级数据约束。
(4)在企业管理器中建立图书、读者和借阅3个表的表级约束:
每个表的主码约束;借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式,再通过操作予以实现;实现借阅表的书号和读者编号的唯一性约束;实现读者性别只能是“男”或“女”的Check(检查)约束。
2、提高操作实验
(1)建立学生课程库操作,在SQLServer企业管理器中实现。
库中表结构为:
学生(学号,姓名,年龄,性别,所在系);
课程(课程号,课程名,先行课);
选课(学号,课程号,成绩)
要求:
1)建库、建表和建立表间联系。
2)选择合适的数据类型。
3)定义必要的索引、列级约束和表级约束。
(2)将自设计的数据库、库中的表、索引和约束用SQL语句表达,并通过企业管理器或查询分析器实现建库、建表、建立表间联系和建立必要的索引、列级约束和表级约束的操作。
四、实验组织运行要求
本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。
开始实验前,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。
实验过程中出现问题,在实验指导老师帮助下解决。
五、实验条件
(1)硬件条件:
个人计算机。
(2)软件条件:
Windows2000NTServer;MSSQLServer2000。
六、实验步骤
(1)先按照实验方法中的要求,在老师指导下完成基本操作实验,即建立图书读者数据库。
(2)然后按照实验方法中的要求,独立完成提高操作实验。
七、思考题
1、用SQL语言表示图书读者数据库建库和建表(建索引)操作。
2、指出图书读者数据库的主码、外码和数据约束。
八、实验报告
实验报告的基本内容及要求见本指导书中“实验报告的基本内容及要求”一节。
针对本次实验具体要求写清楚实验操作步骤(实验记录)和实验结果,实验中出现的问题和解决方法,体会和提高(实验总结)。
九、其它说明
1、建表中如果出现错误,应采取相应的修改结构或删除结构的方法。
2、注意数据库表的主码、外码和数据约束的定义。
实验一:
(二)数据库的建立与维护
实验学时:
1学时
实验类型:
验证
实验要求:
必修
一、实验目的
要求学生熟练掌握使用SQL语言和SQLServer企业管理器向数据库输入数据、修改数据和删除数据等操作。
二、实验内容
1、通过SQLServer企业管理器向数据库表输入数据。
2、对数据库表中的数据进行数据插入、删除和修改等操作。
3、修改数据库表的结构,维护修改结构后的数据库表的数据。
三、实验原理、方法和手段
在MicrosoftSQLServer2000的企业管理器中。
对表进行数据增、删、改操作非常简便。
其操作方法是:
1、选中服务器,展开数据库文件夹,进一步展开指定的数据库。
单击表文件夹,找到需要更新数据的基本表。
2、用鼠标右击要更新数据的表,会出现与表相关操作的弹出菜单,在弹出菜单中选择“打开表”,在右侧选择“返回所有行”,就会出现表数据更新对话框,在该对话框中,数据以表格形式组织,每个字段就是表中的一列,每条记录是表中的一行。
原来的记录已经在表格中,通过移动右边的滑块可查阅所有的记录。
3、需要数据插入时,就在最后一条记录后输入一条记录。
当鼠标点击其他行时,输入的记录会自动保存在表中。
4、需要修改记录时,直接对表中已有记录的数据进行改动,用新值替换原来值。
5、需要删除记录时,先用鼠标单击要删除行的左边灰色方块,使该记录成为当前行,然后按
为了防止误操作,SQLServer2000将弹出一个警告框,要求用户确认删除操作,单击“确认”按钮即可删除记录。
也可通过先选中一行或多行记录,然后再按 6、在表中单击鼠标右键事,会弹出一菜单,选择菜单项可执行相应的操作,如剪切、复制等操作。 四、实验组织运行要求 本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。 开始实验前,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。 实验过程中出现问题,在实验指导老师帮助下解决。 五、实验条件 (1)硬件条件: 个人计算机。 (2)软件条件: Windows2000NTServer;MSSQLServer2000。 六、实验步骤 1、基本操作实验 (1)通过企业管理器,在图书读者数据库的图书、读者和借阅3个表中各输入10条记录。 要求记录不仅满足数据约束要求,还要有表间关联的记录。 (2)通过企业管理器实现对图书读者数据库的图书、读者和借阅3个表中数据的插入、删除和修改操作。 (3)通过企业管理器实现对学生选课库的数据增加、数据删除和数据修改操作。 要求学生、课程和选课表中各有10条以上的记录。 2、提高操作实验 (1)实现在读者表中增加“借书册数”字段,统计某一读者在2001年~2002年间所借书的册数,并将结果送入读者表中的借书册数字段的操作。 (2)向自设计的数据库中的各表输入多条实际数据,并实现数据的增、删、改操作。 七、思考题 1、以一条记录为例,写出用SQL语言表示的向图书表中插入、修改和删除数据的语句。 2、写出用SQL语言实现在读者表中增加“借书册数”字段,统计借书者在2001年~2002年间所借书的册数,并将结果送入读者表中的借书册数字段的操作语句。 八、实验报告 实验报告的基本内容及要求见本指导书中“实验报告的基本内容及要求”一节。 针对本次实验具体要求写清楚实验操作步骤(实验记录)和实验结果,实验中出现的问题和解决方法,体会和提高(实验总结)。 九、其它说明 1、输入数据时要注意数据类型、主码和数据约束的限制。 2、数据更改和数据删除时要注意外码约束。 实验二: 数据库的简单查询和连接查询 实验学时: 2学时 实验类型: 验证 实验要求: 必修 一、实验目的 使学生掌握SQLServer查询分析器的使用方法,加深对SQL语言的查询语句的理解。 熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。 二、实验内容 1、简单查询操作 该实验包括投影、选择条件表达式、数据排序、使用临时表等。 2、连接查询操作 该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。 三、实验原理、方法和手段 1、将查询需求用SQL语言表示。 2、在SQLServer查询分析器的输入区中输入SQL查询语句。 3、设置查询分析器结果区为StandardExecute(标准执行)或ExecutetoGrid方式。 4、发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。 5、查询分析器及使用方法 查询分析器是在开发数据库应用系统时使用最多的工具。 查询分析器的主要作用是编辑SQL语句,将其发送到服务器,并将执行结果及分析显示出来(或进行存储)。 查询分析功能主要通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。 在查询分析器中的左边窗口是对象浏览器,其中按树结构列出了数据库对象;右上方是SQL代码区域,用于输入SQL的查询语句;右下方为结果区,用于显示查询结果和分析结果。 对于SQL语句的执行结果,在结果区中可以有4中不同的输出形式;标准执行将结果直接显示在结果区;网格执行将结果以表格形式显示在结果区;计划执行显示执行计划;索引分析为在结果区中显示查询的索引情况。 上述输出形式,可以通过菜单或按钮选择。 四、实验组织运行要求 本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。 开始实验前,必须进行预习,写出实现所有查询要求的SQL语句。 实验过程中,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。 实验过程中出现问题,在实验指导老师帮助下解决。 五、实验条件 (1)硬件条件: 个人计算机。 (2)软件条件: Windows2000NTServer;MSSQLServer2000。 六、实验步骤 1、基本操作实验 (1)简单查询实验 1)用SQl语句表示下列操作,在学生选课库中实现其数据查询操作。 ①求数学系学生的学号和姓名。 ②求选修了课程的学生学号。 ③求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。 ④求选修课程C1且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。 ⑤求数学系或计算机系姓张的学生的信息。 ⑥求缺少了成绩的学生的学号和课程号。 2)在图书读者库中实现其查询操作: 将计算机类的书存入永久的计算机图书表中,将借书日期在2000年以前的借阅记录存入临时的超期借阅表。 (2)连接查询实验 用SQL语句表示,并在学生选课库中实现下列数据连接查询操作: ①查询每个学生的情况以及他所选修的课程。 ②求学生的学号、姓名、选修的课程名及成绩。 ③求选修C1课程且成绩为90分以上的学生学号、姓名及成绩。 ④查询每一门课的间接先行课(即先行课的先行课)。 2、提高操作实验 (1)按如下表的格式,建立职工部门库和职工表、部门表,并向表中输入数据。 职工表(ZG) 职工号(zgh) 姓名(xm) 性别(xb) 年龄(nl) 所在部门(bmh) 1010 李勇 男 20 11 1011 刘晨 女 19 1012 王敏 女 22 12 1014 张立 男 21 13 部门表(BM) 部门号(bmh) 部门名称(bmmc) 电话(dh) 11 生产科 566 12 计划科 578 13 一车间 467 14 科研所 (2)用SQL语句表示职工和部门之间的内连接、左外部连接和右外部连接,在职工部门库中实现其数据内连接和各种外查询操作。 七、思考题 1、写出实现所有查询要求的SQL语句。 八、实验报告 实验报告的基本内容及要求见本指导书中“实验报告的基本内容及要求”一节。 针对本次实验具体要求在实验预习中写出实现所有查询要求的SQL语句,接下来写清楚实验操作步骤(实验记录)和实验结果,实验中出现的问题和解决方法,体会和提高(实验总结)。 实验三: 数据库的嵌套查询 实验学时: 2学时 实验类型: 验证 实验要求: 必修 一、实验目的 使学生进一步掌握SQLServer查询分析器的使用方法,加深对SQL语言的嵌套查询语句的理解。 二、实验内容 在SQLServer查询分析器中使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。 三、实验原理、方法和手段 将查询要求用SQL语句表示;在SQLServer查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区StandardExecute(标准执行)或ExecutetoGrid(网格执行)方式;发布执行命令,并在结果区中查看结果;如果结果不正确,要进行修改,直到正确为止。 四、实验组织运行要求 本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。 开始实验前,必须进行预习,写出实现所有查询要求的SQL语句。 实验过程中,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。 实验过程中出现问题,在实验指导老师帮助下解决。 五、实验条件 (1)硬件条件: 个人计算机。 (2)软件条件: Windows2000NTServer;MSSQLServer2000。 六、实验步骤 1、基本操作实验 用SQL语句表示,在学生选课库中实现其数据嵌套查询操作。 (1)求选修了高等数学的学生学号和姓名。 (2)求C1课程的成绩高于张三的学生学号和成绩。 (3)求其它系中年龄小于计算机系年龄最大者的学生。 (4)求其它系中比计算机系学生年龄都小的学生。 (5)求选修了C2课程的学生姓名。 (6)求没有选修C2课程的学生姓名。 (7)查询选修了全部课程的学生姓名。 (8)求至少选修了学号为“S2“的学生所选修的全部课程的学生学号和姓名。 2、提高操作实验 对自设计的数据库应用项目的数据查询操作分类,用SQL语句表示其中的简单、连接和嵌套查询,并通过SQLServer查询分析器实现其查询操作。 七、思考题 1、写出实现所有查询要求的SQL语句。 八、实验报告 实验报告的基本内容及要求见本指导书中“实验报告的基本内容及要求”一节。 针对本次实验具体要求在实验预习中写出实现所有查询要求的SQL语句,接下来写清楚实验操作步骤(实验记录)和实验结果,实验中出现的问题和解决方法,体会和提高(实验总结)。 九、其它说明 1、输入SQL语句时应注意,语句中最好使用西文作为字段名。 2、注意语句的层次嵌套关系和括号的配对使用问题。 实验四: 数据库的组合查询和统计查询 实验学时: 2学时 实验类型: 验证 实验要求: 必修 一、实验目的 使学生熟练掌握SQLServer查询分析器的使用方法,加深对SQL语言的查询语句的理解。 熟练掌握数据查询中的分组、统计、计算和组合的操作方法。 二、实验内容 1、分组查询实验。 该实验包括分组条件表达、选择组条件和表达方法。 2、使用集函数查询的实验。 该实验包括统计函数和分组统计函数的使用方法。 3、组合查询实验。 4、计算和分组计算查询的实验。 三、实验原理、方法和手段 将查询需求用SQL语言表示;在SQLServer查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区StandardExecute(标准执行)或ExecutetoGrid(网格执行)方式;发布执行命令,并在结果区中查看结果;如果结果不正确,要进行修改,直到正确为止。 四、实验组织运行要求 本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。 开始实验前,必须进行预习,写出实现所有查询要求的SQL语句。 实验过程中,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。 实验过程中出现问题,在实验指导老师帮助下解决。 五、实验条件 (1)硬件条件: 个人计算机。 (2)软件条件: Windows2000NTServer;MSSQLServer2000。 六、实验步骤 1、基本操作实验 在图书读者库中实现其查询操作。 (1)查找这样的图书类别: 要求类别中最高的图书定价不低于全部按类别分组的图书平均定价的2倍。 (2)求机械工业出版社出版的各类图书的平均定价,用GROUPBY表示。 (3)列出计算机类图书的书号、名称及价格,最后求出册数和总价格。 (4)列出计算机类图书的书号、名称及价格,并求出各出版社这类书的总价格,最后求出全部册数和总价格。 (5)查询计算机类和机械工业出版社出版的图书。 2、提高操作实验 对自设计的数据库应用项目中的分组、统计、计算和组合查询用SQL语句表示,并通过SQLServer查询分析器实现其查询操作。 七、思考题 1、写出实现所有查询要求的SQL语句。 八、实验报告 实验报告的基本内容及要求见本指导书中“实验报告的基本内容及要求”一节。 针对本次实验具体要求在实验预习中写出实现所有查询要求的SQL语句,接下来写清楚实验操作步骤(实验记录)和实验结果,实验中出现的问题和解决方法,体会和提高(实验总结)。 九、其它说明 1、注意WHERE<条件>和HAVING<条件>的使用区别。 2、组合查询的子句间不能有语句的结束符。 3、子句HAVING<条件>必须和GROUPBY<分组字段>子句配合使用。 实验五: 数据库的视图和图表的定义及使用 实验学时: 2学时 实验类型: 验证 实验要求: 必修 一、实验目的 使学生掌握SQLServer中的视图创建向导和图表创建向导的使用方法,加深对视图和SQLServer图表作用的理解。 二、实验内容 1、创建、查看、修改和删除视图。 2、创建、编辑和删除数据库图表。 三、实验原理、方法和手段 1、创建视图 假设在图书_读者数据库中已经建立了图书、读者和借阅3个表,它们的结构为: 图书(书号,类别,出版社,作者,书名,定价); 借阅(书号,读者借书证号,借阅日期); 读者(借书证号,姓名,单位,性别,电话) 如果要在上述3个表的基础上建立一个视图,取名为读者_VIEW,其操作用SQL语句表示为: CREATEVIEW读者_VIEWASSELECT图书.*,借阅.*FROM图书,借阅,读者 WHERE图书.书号=借阅.书号AND借阅.读者借书证号=读者.借书证号; 利用SQLSrever2000中提供的视图创建向导,来创建读者_VIEW视图。 2、查看和修改视图 视图创建好后,就可以利用它进行查询信息了。 如果发现视图的结构不能很好地满足要求,还可以在企业管理器中对它进行修改 3、删除视图 删除视图的方法是: 首先要在企业管理器中,将鼠标指针指向数据库中的视图文件夹,单击右键。 在随后出现的弹出菜单中,选择“删除”项,会出现删除视图对话框。 选中欲删除的视图,单击“全部移出”按钮,被选中的视图就会从视图中被移出。 4、创建关联表 假如要在图书_读者数据库中建立一个读者_借阅_图书关系,要求该图表包括图书、借阅和读者三个表,并包括它们之间的“图书.书号=借阅.书号AND借阅.读者借书证号=读者.借书证号”的外码与被参照表之间的关联,即用关联表实现上述视图的功能。 在企业管理器中通过向导建立数据库关联表。 5、编辑数据库图表 在企业管理器中,展开数据库图表所属的服务器、数据库文件夹、数据库以及关系表文件夹。 用鼠标右键单击要编辑的关系表,在弹出的菜单中选择“设计关系表”项,则弹出一个编辑关系表的对话框,数据库关系表中的所有操作都是在该对话框中完成的。 6、数据库图表的删除 在企业管理器中,用鼠标右键单击欲删除的数据库关系表。 在弹出的菜单上选择“删除”项。 在随后出现的删除对象对话框中选中关系表后,单击“删除全部”按钮,即可删除该数据库中被选中的关系表。 四、实验组织运行要求 本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。 开始实验前,必须进行预习,实验过程中,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。 实验
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 原理 实验 指导书