版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统原理课程设计讲义黑龙江大学软件学院数据库系统原理课程设计讲义一、开设本课程设计的目的本课程是计算机专业中一门重要的专业理论课。为配合数据库原理课程的教学,通过模拟DBMS的实现,更深刻地领会DBMS的工作原理和实现方法,从而具有初步开发系统软件的实际能力,特开设此课程设计。二、课程设计的题目用高级程序设计语言实现DBMS原型设计及实现。三、课程设计的主要内容 通过模拟DBMS的实现,使学生系统地掌握关系代数语言的运算功能;了解DBMS的DDL、DML、DCL等功能的实质含义;掌握结构化设计方法;了解大型软件的设计技术。四、课程设计的具体内容和要求1、创建数据库(DDL)功能模拟在熟悉
2、和掌握某一关系数据库语言的基础上,用高级程序设计语言创建数据库。具体包括:(1)建立“建库”功能的总体菜单,包括建立库结构、输入数据、显示数据库结构和内容、退出等功能。 (2) 实现建立数据结构的功能。要求:能输入任意表名(即关系名) 字段个数、名称任意给定(包括字段名、字段类型、长度任意)。 (3)实现输入数据库记录的功能。 (4)实现显示数据库结构和内容(最好以表格形式显示) (5)实现对主关键字的索引功能。 (6)实现建立视图的功能。 (7)建立数据字典保存三级模式中有关视图、基本表、存储文件的定义。2、关系代数运算(DML)功能模拟 将关系代数语言的选取、投影、连接运算公式进行等价变换
3、,以便输入计算机,被计算机接受和识别。(1)用高级程序设计语言做工具,实现关系代数语言中集合的并、交、差运算功能。并以表格形式显示的运算结果。(2)采用索引的方式,用高级语言实现数据库系统中选取运算的功能。包括带有“及” 、“或”条件的查询,并以表格形式显示的运算结果。(3)用高级语言实现数据库系统中投影运算的功能。并以表格形式显示的运算结果。(4)采用索引的方式,用高级程序语言实现关系代数语言自然连接、等值连接等运算功能。并以表格形式显示的运算结果。3、关系演算(DML)功能模拟 (1)系统掌握DBMS中关系演算语言的功能,以QUEL语言为样本,用C语言实现对用规定符号表达的简单查询命令行进
4、行识别,以表格形式显示查询结果。(2)熟悉QUEL语言的查询功能,用高级语言模拟实现对含有“及”、“或”、“非”符号的命令行进行识别,并以表格形式显示查询结果。4、关系数据库系统的查询优化 掌握关系数据库的查询优化技术,用高级语言实现启发式关系代数优化算法以及启发式关系演算优化算法。5、数据库保护(DCL)功能模拟要求根据数据字典(DD)实现对数据库的安全性检查和完整性约束的机制;利用事务的封锁机制实现对事务处理的并发控制;利用建立日志文件及周期性备份的机制实现对数据库的恢复。6、综合设计 (1) 将前几个实验利用结构化设计方法综合为一个完整的程序系统。(2) 设计该系统的总体菜单。 (3)
5、通过总体菜单选择某一功能进入子菜单。 (4) 通过某一功能子菜单,进入相应各个子系统,完成具体的功能。(5)通过辅助工具,进一步丰富和完善上述程序窗口界面的设计。(6) 采用软件工程的结构化设计方法,将上述各种程序综合为一个完整的软件系统,以达到系统掌握开发系统软件的方法和技术的目的。五、教学文件及教学形式教学文件:数据库系统原理李建中 编著电子工业出版社教学形式:教学及实验同步进行,并按实验要求上机实验,编程调试。实验一 关系数据库SQL语言的使用实验条件:提供以SQL语言为核心的数据库管理系统(如ORACLE,DB2,SYBASE,SQL Server,Visual Foxpro 等)上机
6、环境。(一)实验目的:通过上机实践,了解DBMS和SQL的概貌。熟练掌握SQL的数据定义、数据操纵、完整性控制等功能。(二)实验内容及步骤:实验1 基本表的创建、数据插入(1)建立教学数据库的三个基本表:S(S#,SNAME,AGE,SEX) 学生(学号,姓名年龄,性别)SC(S#,C#,GRADE) 学习(学号,课程号,成绩)C(C#,CNAME,TEACHER)课程(课程号,课程名,任课教师)(2)用INSERT命令输入数据。基本表S的数据:S1 WANG 20 MS2 LIU 19 MS3 CHEN 22 MS4 WU 19 MS5 LOU 21 FS8 DONG 18 F基本表C的数据
7、:C1 DB LIC2 MATHS MAC3 CHEMISTRY ZHOUC4 PHYSICS SHIC5 OS WEN基本表SC的数据:S1C180S1C2 70S1C385S1C490S1C570S2C185S3C190S3C285S3C395S4C175S4C470S5C170S5C260S5C3 80S5C565S8C190S8C395实验2 数据查询(1)检索学习课程号为C2的学生学号及姓名。(2)检索学习课程名为MATHS的学生学号及姓名。(3)检索不学C2课的学生姓名及年龄。(4)检索学习全部课程的学生姓名。实验3 数据修改、删除(1)把C2课程的非空成绩提高10%。(2)在SC
8、表中删除课程名为PHYSICS的成绩的元组。(3)在S和SC表中删除学号为S8的所有数据。实验4 视图的操作(1)建立男学生的视图,属性包括学号、姓名、选修课程名和成绩。(2)在男学生视图中查询平均成绩大于80分的学生学号和姓名。实验5 库函数、授权控制(1)计算每个学生有成绩的课程门数、平均成绩。(2)使用GRANT语句,把对基本表S、SC、C的使用权限授给其他用户。实验二 创建数据库(DDL)功能模拟(一)实验目的:(1)了解关系数据库定义语言的功能。(2)熟悉关系数据库建库命令的功能。(3)掌握用高级程序设计语言创建数据库的方法。(4)掌握以表格形式显示运算结果的方法。(二)实验内容及步
9、骤:1、用C语言(或其它语言)建立“建库”功能的总体菜单(下拉菜单或文本方式),包括建立基本表的结构、输入数据、显示数据库中基本表的结构和内容、退出等功能。2 、用C语言实现建立数据库表的结构的功能。要求:(1)能输入任意关系名。 (2)字段个数、名称任意给定(包括字段名、字段类型、长度任意)。(3)要求以文件形式保存基本表。(存储结构也可自行设计)3、用C语言实现输入数据库记录的功能(插入位置任意)。4、用C语言实现删除数据库记录的功能(删除位置任意)。5、 用C语言实现显示数据库结构和内容(最好以表格形式显示)6、用C语言实现对主关键字的索引功能。7、用C语言实现对其它关键字的索引功能。8
10、、用C语言实现建立视图的功能。9、用C语言建立数据字典保存三级模式中有关视图、基本表、存储文件的定义。10、设计每项功能完成后均返回主菜单的功能。实验三 关系代数语言的集合运算功能模拟(一)实验目的:(1)了解集合运算的功能。(2)掌握关系代数语言的并、交、差运算。(3)掌握C语言实现并、交、差运算的设计方法。(4)掌握以表格形式显示并、交、差运算结果的方法。(二)实验内容及步骤:1、设计该实验的功能菜单。2、用C语言实现建立两个相容的关系。3、用C语言实现关系代数语言的“并”运算功能,并以表格形式显示运算的结果。4、用C语言实现关系代数语言的“交”运算功能,并以表格形式显示运算的结果。5、用
11、C语言实现关系代数语言的“差”运算功能,并以表格形式显示运算的结果。6、设计每项功能完成后均返回主菜单的功能。实验四 关系代数语言的专门运算功能模拟(一)实验目的:(1)熟悉高级语言编译程序的思想。(2)掌握符号串处理的方法和技术。(3)掌握关系代数语言的选取、投影、连接运算的功能。(4)掌握关系代数语言的选取、投影、连接运算的实现技术。(5)掌握关系数据库的查询优化技术。(二)实验内容及步骤:1、将关系代数语言的选取、投影运算公式进行等价变换,以便输入计算机,被计算机接受和识别。2、建立任意一关系数据库。3、采用索引的方式,用C语言实现对该库中关系的某一字段的“”(=、<、>)条
12、件的选取运算,并以表格形式显示运算的结果。4、采用索引的方式,用C语言实现对该库中关系的带有“及”条件的查询,并以表格形式显示运算的结果。5、采用索引的方式,用C语言实现对该库中关系的带有“或”条件的查询,并以表格形式显示运算的结果。6、用C语言实现对该库的任意字段的投影运算,并以表格形式显示运算的结果。7、用C语言实现对该库的选取、投影综合运算,并以表格形式显示运算的结果。8、采用索引的方式,用C语言实现对两个关系的自然连接和等值连接运算,并以表格形式显示运算的结果。实验五简单的关系演算(DML)功能模拟(一)实验目的:(1)掌握关系演算语言的查询功能。(2)熟悉符号串识别和处理技术。(3)
13、掌握关系演算语言的查询功能的实现方法和技术。(二)实验内容及步骤:(1)系统掌握DBMS中关系演算语言的功能,以QUEL语言为样本,用C语言实现对用规定符号表达的简单查询命令行进行扫描和识别,并以表格形式显示查询结果。(2)熟悉QUEL语言的查询功能,用高级语言实现对含有“及”、“或”、“非”符号的命令行进行扫描和识别,并以表格形式显示查询结果。实验六 关系数据库的查询优化(一)实验目的:(1)掌握关系系统的定义及分类。(2)了解全关系系统的概念。(3)了解优化的一般策略。(4)掌握关系代数等价变换规则。(5)掌握关系数据库系统的查询优化技术。(6)掌握关系代数表达式的优化算法。(二)实验内容
14、及步骤:1、采用启发式关系代数优化算法:(1)把查询转换成某种内部表示。(2)把语法树转换成标准形式。(3)选择低层的存取路径。(4)用高级语言实现关系代数表达式优化算法。(对原始的语法树进行优化处理,生成查询计划,选择代价最小的。)2、用高级语言实现启发式关系演算优化算法。实验七数据库保护(DCL)功能模拟(一)实验目的:(1)掌握数据库系统的安全性保护机制。(2)掌握数据库系统的完整性约束机制。(3)了解数据库系统的并发控制技术。(4)掌握数据库系统的恢复技术。(二)实验内容及步骤:(1)要求根据数据字典(DD)实现对数据库的安全性检查。包括设置口令、密码和权限等。(2)根据数据字典(DD
15、)实现对数据库系统的完整性约束机制。(3)利用事务的封锁机制实现对事务处理的并发控制;(4)利用建立日志文件及周期性备份的机制实现对数据库系统的恢复。实验八综合设计(一)实验目的:(1)系统地掌握关系代数语言的运算功能。(2)了解DBMS的DDL、DML、DCL等功能的实质含义。(3)掌握结构化设计方法。(4)了解大型软件的设计技术。(二)实验内容及步骤:(1)采用软件工程的结构化设计方法,将前几个实验利用结构化设计方法综合为一个完整的DBMS原型系统,以达到系统掌握开发软件系统的方法和技术的目的。系统总体结构图如下: DBMS原型模拟DDL功能模拟建库DCL功能模拟集合运算专门运算DML功能
16、模拟关系代数运算并选择交关系演算安全性连接投影完整性并发控制恢复差(2)设计该系统的总体菜单。(3)通过总体菜单选择某一功能进入子菜单。(4)通过某一功能子菜单,进入相应各个子系统,完成具体的功能。(5)通过辅助工具,进一步丰富和完善上述程序窗口、菜单的界面设计。实验考核标准 1、本课程设计共包含八个实验,要求每个学生完成全部实验。完成全部实验的学生经测试答辩通过,方可得到学分。不合格者需要重修。 2、实验成绩评定:每个实验需在规定时间内完成,成绩达到及格以上方可进行下一个实验。每个实验题目有各自的分值,总计100分。实验课不通过者,不能参加期末考试。3、实验教学项目、时间安排及分值分配序号实
17、验项目内容提要时间安排分数有关说明实验一关系数据库SQL语言的使用了解DBMS和SQL的概貌。熟练掌握SQL的数据定义、数据操纵、完整性控制等功能。第二周 |第三周10分要求:实验1和实验2必做,实验3至实验5任选,完成任选题目的学生可加分实验二创建数据库功能模拟用C语言实现,模拟“建库”功能,建立任意结构,任意元组数目的关系,以表格形式显示所建关系的名称,结构及内容,并实现对主关键字的索引和建立视图的功能。第四周 |第五周20分要求:实验内容的第2、3、4、5、6步必做,第1、7、8、9、10步任选,完成任选题目的学生可加分。实验三关系代数语言的集合运算功能模拟用C语言模拟,任意两个相容关系
18、的并、交、差运算,并将运算结果以表格形式显示第六周10分要求:实验内容的第3、4、5步必做,第1、2、6步任选,完成任选题目的学生可加分。实验四关系代数语言的专门运算功能模拟用C语言实现,对用规定符号表达的选取、投影、连接运算的命令行进行扫描和识别,并以表格形式给出运算的结果第七周 |第八周20分要求:实验内容的第3、6、8步必做,第1、2、4、5、7、步任选,完成任选题目的学生可加分。实验五简单的关系演算功能模拟以QUEL语言为样本,用C语言实现对含有比较运算符的命令行进行识别,并以表格形式显示查询结果第九周 |第十周10分要求:实验内容的第1步必做,第2步任选,完成任选题目的学生可加分。实验六关系数据库的查询优化掌握关系数据库的查询优化技术,用高级语言实现启发式关系代数优化算法以及启发式关系演算优化算法。第十一周 |第十二周10分要求
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 消防安装雨季施工方案
- 2024至2030年电控防盗门项目投资价值分析报告
- 2024至2030年化纤粒项目投资价值分析报告
- 2024至2030年便携式移动基站系统时钟校准仪项目投资价值分析报告
- 2024年高效脱氧管项目可行性研究报告
- 陕西师范大学《深度学习实践应用》2023-2024学年第一学期期末试卷
- 家具整体出租合同范例
- 标准幕墙设计合同范例
- 2024年背网式货架项目可行性研究报告
- 建造泳池营运合同范例
- 预防接种证明书出国填写英文
- 互联网医院网络安全等保建设方案
- 自动控制原理全套ppt课件(完整版)
- GB 38508-2020 清洗剂挥发性有机化合物含量限值
- 吊装作业施工方案(模板)
- 初中综合实践课程标准
- 日本江崎格力高历史
- 代扣服务协议
- SPSS统计软件在考试成绩分析中的应用
- 某燃煤采暖锅炉烟气除尘系统设计1
- 中心试验室标准化管理办法
评论
0/150
提交评论