版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统原理课程设计讲义黑龙江大学计算机学院 黑龙江大学软件学院 2011年 11 月 一、开设本课程设计的目的 本课程是计算机专业中一门重要的专业理论课。 为配合数据库系统原理与 实现课程的教学,通过模拟 DBMS 的实现,更深刻地领会 DBMS 的工作原理 和实现方法,从而具有初步开发系统软件的实际能力,特开设此课程设计。将读书环节融入数据库系统原理课程设计的教学内容中, 做到理论教学、 实 践教学、读书环节三者有机结合。通过读书使学生进一步了解课程的理论知识, 拓宽视野,加深对本专业相关课程的理解,并培养独立阅读、思考、解决问题的 能力。二、课程设计的主要内容 通过理论授课与读书环节,
2、熟悉 DBMS 设计与实现的基本理论和方法,用 高级程序设计语言完成 DBMS 原型系统的设计与实现。通过模拟 DBMS 的实现, 使学生系统地掌握关系代数语言的运算功能;了解 DBMS 的 DDL 、DML 、DCL 等功能的实质含义;掌握结构化设计方法;了解大型软件的设计技术。1、DDL 功能模拟在熟悉和掌握关系数据库查询语言的基础上, 用高级程序设计语言创建数据 库。具体包括:(1)实现 SQL 的建库语句,建立相应的数据库表,并填写数据字典。(2)实现表模式的修改功能。要求: 能够为已建立的表添加属性。 能够从已建立的表中删除属性。(3)实现删除表功能。(4)实现创建视图的功能。(5)
3、实现删除视图的功能。(6)实现创建索引的功能。(7)实现删除索引的功能。2、DML 功能模拟使用某种高级程序设计语言, 实现 SQL 语句中的数据维护操作和查询操作。具体包括:(1)往已经创建的表中插入元组。(2)从已经创建的表中删除元组。(3)修改表中的数据。(4)实现 SELECT 语句,包括: 实现单表上的选择和投影操作。 实现多表的连接操作。 实现多表的选择、投影和连接的混合操作。 实现带视图的上述操作。 实现索引关系的上述操作。(5)用高级语言实现启发式关系代数优化算法和基于复杂性估计的查询优 化方法。3、DCL 功能模拟要求根据数据字典(DD)实现对数据库的安全性检查和完整性约束的
4、机制; 利用事务的封锁机制实现对事务处理的并发控制; 利用建立日志文件及周期性备 份的机制实现对数据库的恢复。三、教学文件及教学形式教学文件:数据库系统原理,李建中编著,电子工业出版社 教学形式:教学与实验同步进行,并按实验要求上机实验,编程调试。四、课程设计的具体内容数据库系统原理课程设计共包括 7 个子实验,具体实验内容如下。实验一 关系数据库SQL语言的使用实验条件:提供以SQL语言为核心的数据库管理系统(如ORACLE , DB2,SYBASE,SQL Server等)上机环境。(一)实验目的通过上机实践,了解 DBMS和SQL的概貌。熟练掌握SQL的数据定义、 数据操纵、完整性控制等
5、功能。(二)实验内容与步骤1、基本表的创建、数据插入(1)建立教学数据库的三个基本表:S(S#, SNAME, AGE, SEX)学生(学号,姓名,年龄,性别)SC(S#, C#, GRADE)学习(学号,课程号,成绩)C(C#, CNAME, TEACHER)课程(课程号,课程名,任课教师)(2)用INSERT命令输入数据。基本表S的数据:S1WANG20MS2LIU19MS3CHEN22MS4WU19MS5LOU21FS8DONG18F基本表C的数据:C1DBLIC2MATHSMAC3CHEMISTRYZHOUC4PHYSICSSHIC5OSWEN基本表SC的数据:S1C180S1C270
6、S1C385S1C490S1C570S2C185S3C190S3C285S3C395S4C175S4C470S5C170S5C260S5C380S5C565S8C190S8C3952、数据查询(1)检索学习课程号为C2的学生学号与姓名。(2)检索学习课程名为MATHS的学生学号与姓名。(3)检索不学C2课的学生姓名与年龄。(4)检索学习全部课程的学生姓名。3、数据修改、删除(1)把C2课程的非空成绩提高10%。(2)在SC表中删除课程名为PHYSICS的成绩的元组(3)在S和SC表中删除学号为S8的所有数据。4、属性的添加和删除(1) 为S表添加家庭住址和身高两个属性。( 2 )为家庭住址和身
7、高这两个属性添加值。( 3)分别删除家庭住址和身高属性。5、视图的操作( 1 )建立男学生的视图,属性包括学号、姓名、选修课程名和成绩。( 2)在男学生视图中查询平均成绩大于 80分的学生学号和姓名。6、库函数、授权控制( 1 )计算每个学生有成绩的课程门数、平均成绩。(2) 使用GRANT语句,把对基本表S、SC、C的使用权限授给其他用户实验二 关系数据库 SQL 语言的词法和语法分析(一) 实验目的利用已有的编译知识,完成 SQL 语句的词法和语法分析工作,进一步了解 DBMS 中数据字典的作用,并为后续的查询处理和优化实验打好基础。(二) 实验内容与步骤分别完成下面语句的词法和语法分析工
8、作:1)create table( 8 )create index2)drop table( 9 )drop index3)alter table(10)create view4)insert(11)drop view5)delete(12)create user6)update(13)grant7)select(14)revoke实验三 创建数据库及数据操作功能一)实验目的1、熟悉关系数据库建库语句和数据操作语句的功能2、熟悉关系数据库中关系模式维护语句的功能。3、掌握用高级程序设计语言创建数据库的方法。4、掌握数据操作功能的实现方法。5、掌握修改关系模式的方法。二)实验内容与步骤:1、实现
9、建立数据库表结构的功能。要求:(1)支持整型、符点型、字符型数据。(2)以文件形式保存基本表。 (存储结构可自行设计)(3)建立相应的数据字典。2、实现输入数据库记录的功能。3、实现删除数据库记录的功能。4、实现修改数据库记录的功能。5、实现显示数据库结构和内容(以表格形式显示) 。6、实现在已有的关系中添加属性的功能;并修改相应的7、实现从已有的关系中删除属性的功能; 6和7要求不论关系表中是否有数据, 都能正确执行命令, 数据字典。8、实现删除表的功能。9、实现建立视图的功能,并保存在数据字典中。10、实现删除视图的功能。实验四 索引的创建及删除一)实验目的1、了解SQL语句中的创建索引及
10、删除索引语句的格式和功能2、掌握主索引、聚集索引及辅助索引的建立及检索方法。3、掌握B树索引的建立及检索方法。4、掌握删除索引的方法。二)实验内容与步骤1、为某关系的主属性建立索引。2、为某关系的非主属性建立索引。3、为某关系的某属性建立B树索引4、删除建立的索引。实验五 查询功能(一)实验目的1熟悉SQL语句中的查询语句的格式和功能。2、掌握查询处理算法,包括选择、投影、连接算法。要求:能够处理多个表的连接操作;查询条件包括 and、 or、 、 。(二)实验内容与步骤1、实现全关系选择操作( select * from 关系名)。2、实现单关系的投影操作。3、实现单关系的选择操作(允许多条
11、件) 。4、实现单关系的选择和投影操作(允许多条件) 。5、实现两个关系和多个关系的连接操作。6、实现两个关系和多个关系的选择和连接操作。7、实现多个关系的选择、投影和连接操作。在建立索引前在建立索引前8、利用索引属性完成选择操作, 记录完成操作花费的时间, 的关系上执行同样的选择操作并进行时间代价的比较。9、利用索引属性完成连接操作, 记录完成操作花费的时间, 的关系上执行同样的连接操作并进行时间代价的比较。10、实现带视图的查询。实验六 关系数据库的查询优化(一)实验目的1、了解优化的一般策略。2、掌握关系代数等价变换规则。3、掌握启发式代数优化规则。4、掌握启发式关系代数优化算法。5、掌
12、握基于复杂性估计的查询优化方法。二)实验内容与步骤1、把查询转换成语法树。2、用高级语言实现启发式关系代数优化算法。 (对原始的语法树进行优化 处理,生成查询计划,选择代价最小的。 )3、采用基于复杂性估计的查询优化方法选择查询执行策略。 实验七 数据库保护( DCL )功能 (一)实验目的1、掌握数据库系统的安全性保护机制。2、掌握数据库系统的完整性约束机制。3、了解数据库系统的并发控制技术。4、掌握数据库系统的恢复技术。(二)实验内容与步骤1、要求根据数据字典( DD )实现对数据库的安全性检查。包括设置口令、 密码和授权等。2、根据数据字典( DD )实现对数据库系统的完整性约束机制。3
13、、利用事务的封锁机制实现对事务处理的并发控制。4、利用建立日志文件及周期性备份的机制实现对数据库系统的恢复。五、考核标准在读书工程环节, 学生通过阅读相关的参考书目, 对课程设计的各个实验环 节进行理论学习、实验分析与设计、编码实现、最后进行分析与总结,通过提交 总结报告的形式进行考核,并列出参考书目,字数不少于5000 字。读书环节部分占课程总成绩的 15%。本课程设计的实验环节要求每个学生完成全部七个实验。 完成全部实验的学 生经测试答辩通过, 方可得到学分。 不合格者需要重修。 每个实验需在规定时间 内完成,成绩达到及格以上方可进行下一个实验,每个实验题目有各自的分值。 实验环节占课程总
14、成绩的 85%。实验教学项目、时间安排及分值分配如下表:序号实验项目内容提要时间安排分数有关说明实验关系数据库SQL语言的使用了解DBMS和SQL的概貌。熟练掌握SQL的数据定义、 数据操纵、完整性控制等 语句及其功能。第4周I第4周(4学时)5分要求:实验1至实 验4必做,实验5和 实验6任选。完成 任选题目的学生 可加分。实验关系数据库SQL语言的词法和语法分析完成给定SQL语句的词法 和语法分析工作,进一步 了解DBMS中数据字典的 作用。生成查询语句的中 间表示形式,为后续的查 询优化实验打好基础。第5周I第6周(8学时)10分说明:(1)要求写 出各语句的文法, 实现相应的语法 分析
15、器,验证输入 的语句是否符合 相应文法的规范。(2)如果无法写 出文法,可以通过 字符串扫描分析 等其它途径实现 对输入语句的验 证工作,但要适当 减分。实验创建数据库及数据操作功能建立任意结构的关系,实 现元组的增删改操作,实 现属性的增删操作,实现 建立视图功能,实现表和 视图的删除功能。第7周I第9周(12学时)15分要求:实验内容的1-8必做,9、10任选,完成任选题目的学生可加分。实验四索引的创建及删除实现创建和删除索引功 能。第10周I第11周(8学时)10分要求:实验内容的 第1、2和3必做其 一,4步任选,完 成任选题目的学 生可加分。实验五查询功能实现无索引关系上的选 择、投
16、影、连接操作;实 现索引关系上的选择、投 影和连接操作,并与非索 弓1关系上的相应操作比较 时间代价;实现带视图的 选择、投影和连接操作。第12周I第15周(16学时)25分要求:实验内容的第1-9必做,10任选,完成任选题目的学生可加分。实验六关系数据库的查询优化掌握关系数据库的查询优 化技术,实现启发式关系 代数优化算法以及基于复 杂性估计的查询优化方 法。第16周I第17周(8学时)10分要求:实验内容的 第1、2步必做,第 3步任选,完成任 选题目的学生可 加分实验七数据库保护功能(DCL)根据数据字典(DD)实现 对数据库的安全性检查和 完整性约束机制。实现对 事务处理的并发控制和数
17、 据库系统的恢复。第18-18周(4学时)10分要求:实验内容的 第1、2步必做,第 3、4步任选,完成 任选题目的学生 可加分。六、参考书目1、数据库系统原理(第2版)作者:李建中、王珊出版社:电子工业出版社出版日期:2004年9月本书全面系统地介绍了数据库系统的理论、技术和方法,并介绍了适应于新一代数据库应用的数据库新技术。本书分为基础篇、设计篇、实现篇和新技术篇。 基础篇由四章组成,介绍了数据库的基本概念、 数据库和数据库系统的体系结构、 关系数据库系统、 层次和网状数据库系统以及数据库的安全性与完整性约束。 设 计篇由五章组成, 讨论了数据库设计的五个基本步骤和设计方法, 并介绍了实体
18、 联系模型、 扩展的实体联系模型和关系数据库的函数依赖理论。 实现篇由七章组 成,介绍了数据库的物理存储结构、数据字典、关系代数操作算法、查询优化方 法和事务处理技术。 新技术篇由六章组成, 介绍了新一代数据库应用、 新一代数 据库应用对数据库系统的要求和新一代数据库技术。本书内容丰富,系统性强,具有新的知识体系结构,理论与实践结合,可作 为计算机专业本科生和研究生数据库课程的教材或参考书, 也可以供从事数据库 教学与科研工作的教师和科技工作者参考。2、数据库系统概念(第 5 版)。译者:杨冬青、马秀莉、唐世渭等 出版社:机械工业出版社 出版日期: 2006年 10月本书是经典的数据库系统教科
19、书 database system conoepts 的最新修订版, 全面介绍数据库系统的各种知识, 透彻阐释数据库管理的基本概念。 本书内容丰 富,不仅讨论了数据库查询语言、模式设计、数据仓库、数据库应用开发、基于 对象的数据库和 xml 、数据存储和查询、事务管理、数据挖掘与信息检索以及数 据库系统体系结构等方面的内容, 而且对性能评测标准、 性能调整、 标准化以及 空间与地理数据、事务处理监控等高级应用主题进行了广泛讨论。本书既可作为高年级本科生或低年级研究生的数据库课程教材, 也可供数据 库领域的技术人员参考。本书是数据库系统方面的经典教材之一。 国际上许多著名大学包括斯坦福大 学、耶
20、鲁大学、得克萨斯大学、康奈尔大学、伊利诺伊大学、印度理工学院等都 采用本书作为教科书。 我国也有许多所大学采用本书以前版本的中文版作为本科 生和研究生的数据库课程的教材和主要教学参考书,收到了良好的效果。本书调整和新增内容:调整了第 4版的讲授顺序。首先介绍 sql 及其高级特 性,使学生容易接受数据库设计的概念。 新增数据库设计的专门讨论。 彻底改写 和更新了基于对象的数据库和 xml 的相关内容。重新组织数据挖掘和信息检索的内容,增加了对数据库系统postgresql的实例研究。3、数据库系统实现(第 2 版)。译者: 杨冬青 吴愈青 等出版社:机械工业出版社出版日期: 2010年 6 月
21、本书是斯坦福大学计算机科学专业数据库系列课程第二门课的教科书。 书中 对数据库系统实现原理进行了深入阐述, 并具体讨论了数据库管理系统的三个主 要成分存储管理器、 查询处理器和事务管理器的实现技术。 此外,第 2 版充 分反映了数据管理技术的新进展, 对内容进行了扩充, 除了在第 1版中原有的 “信 息集成”一章(第 10 章)中加入了新的内容外,还增加了两个全新的章: “数据 挖掘”(第 11章)和“数据库系统与互联网 ”(第 12 章)。本书适合作为高等院校计算机专业研究生的教材或本科生的教学参考书, 也 适合作为从事相关研究或开发工作的专业技术人员的高级参考资料。4、Oracle 实用教
22、程(第 3 版)。作者:郑阿奇出版社:电子工业出版社出版日期: 2011年 1 月本书以当前流行的Oracle 11g作为平台,分别介绍Oracle教程、0racle实验、 综合应用实习和附录。Oracle教程部分比较系统地介绍了 Oracle 11g (中文版) 的主要功能, 并且通过实验对主要内容进行操作和编程训练。 实习部分比较系统 地介绍了 VB 6.0/Oracle、 PB 11.5/Oracle、 ASP/Oracle、 ASP.NET 3.5 ( C#) / Oracle 和 Java EE(Struts 2) /Oracle 的应用方法。只要阅读本书,结合上机操作指导进 行练习
23、和实习模仿,就能在较短的时间内基本掌握 Oracle 11g及其应用技术。本书可作为大学本科、大专和高职有关课程教材,也可供广大数据库学习、 应用开发人员参考。5、Oracle 入门很简单。作者:张朝明出版社:清华大学出版社出版日期: 2011年 1月本书从初学者的角度出发,由浅入深、循序渐进地介绍了 oracle数据库开发 的基础知识。书中对数据库基本理论及其在数据库开发过程中的应用也有详细介 绍。书中也列举了大量示例,可供读者演练。本书共分 5篇。第 1篇介绍了数据库的基本知识,包括数据库基础、实体 - 联系模型、oracle数据库与数据表;第2篇介绍了 oracle pl/sql的基本知
24、识,包括 sql 查询、更新数据、字符型处理、数值型处理、日期型处理、复杂数据处理、 控制语句;第 3 篇以数据库对象为主线讲述了包括视图、约束、游标、触发器、 序列、用户角色与权限控制、 函数与存储过程等内容; 第 4 篇则重点讲述了 oracle 性能优化、一致性与事务管理、并发控制等内容;第 5篇讲述了 oracle在主流程 序开发语言(java、c#)中的应用。本书内容丰富,覆盖面广,适合 oracle初学者快速入门,也适合已有 oracle 数据库基础的人员完善自己的oracle知识体系。另外,对于大中专院校和培训班 的学生,本书更是一本不可多得的教材。6、SQL Server 20
25、08编程入门经典(第 3 版)。作者:(美)韦拉 著,马煜,孙晧译 出版社:清华大学出版社 出版日期: 2010年 1月本书由浅入深逐步介绍了 SQL Server数据库的高级主题,重点讨论了 SQL Server 2008的特殊功能以及与其他编程环境的不同之处。作者 Robert Vieria 是 Microsoft SQL, Server方面的权威,他采用通俗易懂的方法揭示了 SQL Server-2008核心组件的重要更改。首先概述了数据库设计的概念,介绍了如何 用SQL Setver 2008实现这些基本概念。然后,讲述了 RDBMS (关系数据库管 理系统)的功能和它在开发系统架构方
26、面的优势。SQL Server 2008的新增内容和更改包括: DATE 和 TIME 数据类型、 hierarchyID 数据类型、 MERGE 命令和 多行插入,以及递归查询等。 SQL Server 2008编程入门经典 (第 3 版)旨在帮 助您快速地掌握 Microsoft SQL Selwer2008 的编程技术。7、数据库技术与应用 SQL Server2008。作者:胡国胜,易著梁出版社:机械工业出版社 出版日期: 2010年 1月本书系统全面地阐述了数据库的基本原理及应用。 全书内容围绕图书馆管理 数据库系统展开, 系统地介绍了 SQL Server 2008数据库的应用; 书中实训环 节使用宾馆管理信息系统,充分体现了“项目驱动、案例教学、理论与实践相结 合”的教学理念。 通过最后的综合应用实例的学习, 读者可以进一步掌握实际而 又全面的数据库应用知识。本书以培养学生的数据库开发能力为目标, 内容新颖,通俗易懂,实用性强, 适合作为高职高专院校计算机相关专业的教材, 也可供广大技术人员及自学者参 考。8、C 程序设计(第四版)。谭浩强。清华大学出版社。作者:谭浩强出版社:清华大学出版社 出版日期: 2010年 6月本书是一本公认的学习 C 语言程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健康打卡素材
- 员工考勤制度执行情况检查与整改通知函3篇
- 2026年抗肿瘤药物知识培训试题附答案
- 2026年河南信阳事业单位联考《公共基础知识》试题附答案
- 曲靖市麒麟区2025年消防设备操作员考试试题含答案
- 2026年产科正常分娩培训试题附答案
- 2026年税务系统遴选半结构化面试练习题解析附解析含答案
- 2026年社区预防接种上岗考试参考题库(含答案)
- 2026年重症三基综合高阶试题及答案
- 2026年名贵钟表鉴定师测试考核试卷及答案
- 2026福建厦门地铁(轨道交通集团限公司)13个岗位社会招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年交通安全非机动车培训
- 家族办公室服务与数字化工具商业计划书
- 机场消防安全培训知识课件
- DB32∕T 5206-2025 中医护理门诊建设与服务规范
- TCAME 66-2024《一次性手术铺单使用》
- 木结构建筑防火培训知识课件
- 2025年山东药品监管题库及答案
- 统编版(2024)八年级上册语文第一单元检测试卷(含答案解析)
- 铋冶炼工三级安全教育(车间级)考核试卷及答案
- 铁路隧道掘进机法技术规程
评论
0/150
提交评论