数据库系统原理课程设计讲义Word文档格式.doc
《数据库系统原理课程设计讲义Word文档格式.doc》由会员分享,可在线阅读,更多相关《数据库系统原理课程设计讲义Word文档格式.doc(11页珍藏版)》请在冰豆网上搜索。
(2)实现建立数据结构的功能。
要求:
①能输入任意表名(即关系名)
②字段个数、名称任意给定(包括字段名、字段类型、长度任意)。
(3)实现输入数据库记录的功能。
(4)实现显示数据库结构和内容(最好以表格形式显示)
(5)实现对主关键字的索引功能。
(6)实现建立视图的功能。
(7)建立数据字典保存三级模式中有关视图、基本表、存储文件的定义。
2、关系代数运算(DML)功能模拟
将关系代数语言的选取、投影、连接运算公式进行等价变换,以便输入计算机,被计算机接受和识别。
(1)用高级程序设计语言做工具,实现关系代数语言中集合的并、交、差运算功能。
并以表格形式显示的运算结果。
(2)采用索引的方式,用高级语言实现数据库系统中选取运算的功能。
包括带有“与”、“或”条件的查询,并以表格形式显示的运算结果。
(3)用高级语言实现数据库系统中投影运算的功能。
(4)采用索引的方式,用高级程序语言实现关系代数语言自然连接、等值连接等运算功能。
3、关系演算(DML)功能模拟
(1)系统掌握DBMS中关系演算语言的功能,以QUEL语言为样本,用C语言实现对用规定符号表达的简单查询命令行进行识别,以表格形式显示查询结果。
(2)熟悉QUEL语言的查询功能,用高级语言模拟实现对含有“与”、“或”、“非”符号的命令行进行识别,并以表格形式显示查询结果。
4、关系数据库系统的查询优化
掌握关系数据库的查询优化技术,用高级语言实现启发式关系代数优化算法以及启发式关系演算优化算法。
5、数据库保护(DCL)功能模拟
要求根据数据字典(DD)实现对数据库的安全性检查和完整性约束的机制;
利用事务的封锁机制实现对事务处理的并发控制;
利用建立日志文件及周期性备份的机制实现对数据库的恢复。
6、综合设计
(1)将前几个实验利用结构化设计方法综合为一个完整的程序系统。
(2)设计该系统的总体菜单。
(3)通过总体菜单选择某一功能进入子菜单。
(4)通过某一功能子菜单,进入相应各个子系统,完成具体的功能。
(5)通过辅助工具,进一步丰富和完善上述程序窗口界面的设计。
(6)采用软件工程的结构化设计方法,将上述各种程序综合为一个完整的软件系统,以达到系统掌握开发系统软件的方法和技术的目的。
五、教学文件及教学形式
教学文件:
《数据库系统原理》李建中编著电子工业出版社
教学形式:
教学与实验同步进行,并按实验要求上机实验,编程调试。
实验一关系数据库SQL语言的使用
实验条件:
提供以SQL语言为核心的数据库管理系统(如ORACLE,DB2,SYBASE,SQLServer,VisualFoxpro等)上机环境。
(一)实验目的:
通过上机实践,了解DBMS和SQL的概貌。
熟练掌握SQL的数据定义、数据操纵、完整性控制等功能。
(二)实验内容与步骤:
实验1基本表的创建、数据插入
(1)建立教学数据库的三个基本表:
S(S#,SNAME,AGE,SEX)学生(学号,姓名年龄,性别)SC(S#,C#,GRADE)学习(学号,课程号,成绩)
C(C#,CNAME,TEACHER)课程(课程号,课程名,任课教师)
(2)用INSERT命令输入数据。
基本表S的数据:
S1WANG20M
S2LIU19M
S3CHEN22M
S4WU19M
S5LOU21F
S8DONG18F
基本表C的数据:
C1DBLI
C2MATHSMA
C3CHEMISTRYZHOU
C4PHYSICSSHI
C5OSWEN
基本表SC的数据:
S1
C1
80
C2
70
C3
85
C4
90
C5
S2
S3
C2
95
S4
75
S5
60
C3
65
S8
实验2数据查询
(1)检索学习课程号为C2的学生学号与姓名。
(2)检索学习课程名为MATHS的学生学号与姓名。
(3)检索不学C2课的学生姓名与年龄。
(4)检索学习全部课程的学生姓名。
实验3数据修改、删除
(1)把C2课程的非空成绩提高10%。
(2)在SC表中删除课程名为PHYSICS的成绩的元组。
(3)在S和SC表中删除学号为S8的所有数据。
实验4视图的操作
(1)建立男学生的视图,属性包括学号、姓名、选修课程名和成绩。
(2)在男学生视图中查询平均成绩大于80分的学生学号和姓名。
实验5库函数、授权控制
(1)计算每个学生有成绩的课程门数、平均成绩。
(2)使用GRANT语句,把对基本表S、SC、C的使用权限授给其他用户。
实验二创建数据库(DDL)功能模拟
(1)了解关系数据库定义语言的功能。
(2)熟悉关系数据库建库命令的功能。
(3)掌握用高级程序设计语言创建数据库的方法。
(4)掌握以表格形式显示运算结果的方法。
1、用C语言(或其它语言)建立“建库”功能的总体菜单(下拉菜单或文本方式),包括建立基本表的结构、输入数据、显示数据库中基本表的结构和内容、退出等功能。
2、用C语言实现建立数据库表的结构的功能。
(1)能输入任意关系名。
(2)字段个数、名称任意给定(包括字段名、字段类型、长度任意)。
(3)要求以文件形式保存基本表。
(存储结构也可自行设计)
3、用C语言实现输入数据库记录的功能(插入位置任意)。
4、用C语言实现删除数据库记录的功能(删除位置任意)。
5、用C语言实现显示数据库结构和内容(最好以表格形式显示)
6、用C语言实现对主关键字的索引功能。
7、用C语言实现对其它关键字的索引功能。
8、用C语言实现建立视图的功能。
9、用C语言建立数据字典保存三级模式中有关视图、基本表、存储文件的定义。
10、设计每项功能完成后均返回主菜单的功能。
实验三关系代数语言的集合运算功能模拟
(1)了解集合运算的功能。
(2)掌握关系代数语言的并、交、差运算。
(3)掌握C语言实现并、交、差运算的设计方法。
(4)掌握以表格形式显示并、交、差运算结果的方法。
1、设计该实验的功能菜单。
2、用C语言实现建立两个相容的关系。
3、用C语言实现关系代数语言的“并”运算功能,并以表格形式显示运算的结果。
4、用C语言实现关系代数语言的“交”运算功能,并以表格形式显示运算的结果。
5、用C语言实现关系代数语言的“差”运算功能,并以表格形式显示运算的结果。
6、设计每项功能完成后均返回主菜单的功能。
实验四关系代数语言的专门运算功能模拟
(1)熟悉高级语言编译程序的思想。
(2)掌握符号串处理的方法和技术。
(3)掌握关系代数语言的选取、投影、连接运算的功能。
(4)掌握关系代数语言的选取、投影、连接运算的实现技术。
(5)掌握关系数据库的查询优化技术。
1、将关系代数语言的选取、投影运算公式进行等价变换,以便输入计算机,被计算机接受和识别。
2、建立任意一关系数据库。
3、采用索引的方式,用C语言实现对该库中关系的某一字段的“θ”(=、≠、≤、≥、<
、>
)条件的选取运算,并以表格形式显示运算的结果。
4、采用索引的方式,用C语言实现对该库中关系的带有“与”条件的查询,并以表格形式显示运算的结果。
5、采用索引的方式,用C语言实现对该库中关系的带有“或”条件的查询,并以表格形式显示运算的结果。
6、用C语言实现对该库的任意字段的投影运算,并以表格形式显示运算的结果。
7、用C语言实现对该库的选取、投影综合运算,并以表格形式显示运算的结果。
8、采用索引的方式,用C语言实现对两个关系的自然连接和等值连接运算,并以表格形式显示运算的结果。
实验五简单的关系演算(DML)功能模拟
(1)掌握关系演算语言的查询功能。
(2)熟悉符号串识别和处理技术。
(3)掌握关系演算语言的查询功能的实现方法和技术。
(1)系统掌握DBMS中关系演算语言的功能,以QUEL语言为样本,用C语言实现对用规定符号表达的简单查询命令行进行扫描和识别,并以表格形式显示查询结果。
(2)熟悉QUEL语言的查询功能,用高级语言实现对含有“与”、“或”、“非”符号的命令行进行扫描和识别,并以表格形式显示查询结果。