



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品数据库系统原理课程设计讲义黑龙江大学计算机学院黑龙江大学软件学院2016 年3月welcome精品一、开设本课程设计的目的本课程是计算机专业中一门重要的专业理论课。为配合数据库系统原理与实现课程的教学,通过模拟DBMS 的实现,更深刻地领会DBMS 的工作原理和实现方法,从而具有初步开发系统软件的实际能力,特开设此课程设计。将读书环节融入数据库系统原理课程设计的教学内容中,做到理论教学、 实践教学、读书环节三者有机结合。通过读书使学生进一步了解课程的理论知识,拓宽视野,加深对本专业相关课程的理解,并培养独立阅读、思考、解决问题的能力。二、课程设计的主要内容通过理论授课与读书环节,熟悉DBM
2、S 设计与实现的基本理论和方法,用高级程序设计语言完成DBMS 原型系统的设计与实现。通过模拟 DBMS 的实现,使学生系统地掌握关系代数语言的运算功能;了解DBMS 的 DDL 、DML 、DCL等功能的实质含义;掌握结构化设计方法;了解大型软件的设计技术。1 、DDL 功能模拟在熟悉和掌握关系数据库查询语言的基础上,用高级程序设计语言创建数据库。具体包括:(1)实现 SQL 的建库语句,建立相应的数据库表,并填写数据字典。(2)实现表模式的修改功能。要求:能够为已建立的表添加属性。能够从已建立的表中删除属性。(3)实现删除表功能。(4)实现创建视图的功能。welcome精品(5)实现删除视
3、图的功能。(6)实现创建索引的功能。(7)实现删除索引的功能。2 、DML 功能模拟使用某种高级程序设计语言, 实现 SQL 语句中的数据维护操作和查询操作。具体包括:(1)往已经创建的表中插入元组。(2)从已经创建的表中删除元组。(3)修改表中的数据。(4)实现 SELECT语句,包括:实现单表上的选择和投影操作。实现多表的连接操作。实现多表的选择、投影和连接的混合操作。实现带视图的上述操作。实现索引关系的上述操作。(5)用高级语言实现启发式关系代数优化算法和基于复杂性估计的查询优化方法。3 、DCL 功能模拟要求根据数据字典 (DD )实现对数据库的安全性检查和完整性约束的机制;利用事务的
4、封锁机制实现对事务处理的并发控制;利用建立日志文件及周期性备份的机制实现对数据库的恢复。三、教学文件及教学形式welcome精品教学文件:数据库系统原理,李建中编著,电子工业出版社教学形式:教学与实验同步进行,并按实验要求上机实验,编程调试。四、课程设计的具体内容数据库系统原理课程设计共包括7 个子实验,具体实验内容如下。welcome精品实验一关系数据库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的数据:welcome精品C1DBLIC2MATHSMAC3CHEMISTRYZHOUC4PHYSICSSHIC5OS
6、WEN基本表SC的数据:welcome精品S1C180S1C270S1C385S1C490S1C570S2C185S3C190S3C285S3C395S4C175S4C470S5C170S5C260S5C380S5C565学 号S8C190S8C395的学生学号与姓名。2 、数据查询( 1)检索学习课程号为 C2 的学生与姓名。( 2 )检索学习课程名为 MATHS(3)检索不学 C2 课的学生姓名与年龄。(4)检索学习全部课程的学生姓名。3 、数据修改、删除welcome精品(1)把 C2 课程的非空成绩提高 10% 。(2)在 SC表中删除课程名为 PHYSICS的成绩的元组。(3)在 S
7、和SC表中删除学号为 S8的所有数据。4 、属性的添加和删除(1)为 S表添加家庭住址和身高两个属性。(2)为家庭住址和身高这两个属性添加值。(3)分别删除家庭住址和身高属性。5 、视图的操作(1)建立男学生的视图,属性包括学号、姓名、选修课程名和成绩。(2)在男学生视图中查询平均成绩大于80 分的学生学号和姓名。6 、库函数、授权控制(1)计算每个学生有成绩的课程门数、平均成绩。(2)使用 GRANT 语句,把对基本表 S、 SC、 C的使用权限授给其他用户。实验二关系数据库SQL 语言的词法和语法分析(一)实验目的利用已有的编译知识,完成SQL 语句的词法和语法分析工作,进一步了解DBMS
8、 中数据字典的作用,并为后续的查询处理和优化实验打好基础。(二)实验内容与步骤分别完成下面语句的词法和语法分析工作:( 1 ) create table( 8 ) create index( 2 ) drop table( 9 ) drop index( 3 ) alter table( 10 ) create viewwelcome精品( 4 ) insert( 11) drop view( 5 ) delete( 12) create user( 6 ) update( 13) grant( 7 ) select( 14) revoke每一个语句的具体要求:( 1 ) CREATE TAB
9、LE关 系名(属 性名类 型 ,/ 类 型至 少支 持 int 、 char两种 类型.,属性名类型)(2) DROP TABLE关系名(3)ALTERTABLE关系名ADD属性名类型/ 支持 的类 型同 create table语 句ALTERTABLE关系名DROP属性名,属性名(4) INSERT INTO关系名(< 列名>,< 列名>)(VALUES(<常值 >,.,<常 值 >)( 5 ) DELETE FROM关 系名WHERE条 件表 达式 / 条件表达式包括and 、or 、= 、< 、>(6)UPDATE关系名SET
10、列名=常值, ,列名=常值WHERE条件 表达 式 / 同 delete( 7)SELECT*| 属性名列表FROM 关系名列表welcome精品WHERE 条件表达式/ 同 delete( 8 ) CREATE INDEX索引名 ON 关系名 (属性名,., 属性名)( 9 ) DROP INDEX索 引名( 12) CREATE USER用户 名 IDENTIFIED BY密 码( 13)GRANT 权限列表/ 自己实现的所有 SQL 命令ON关 系名TO用户列表( 14)REVOKE 权限列表/ 同 GRANTON关 系名FROM用户列表实验三创建数据库及数据操作功能(一)实验目的1、熟
11、悉关系数据库建库语句和数据操作语句的功能。2、熟悉关系数据库中关系模式维护语句的功能。3、掌握用高级程序设计语言创建数据库的方法。4、掌握数据操作功能的实现方法。5、掌握修改关系模式的方法。(二)实验内容与步骤:/ 以下命令实现的功能参照实验二中对语句的要求1、实现建立数据库表结构的功能(create table)。要求:(1)支持整型、字符型数据。(2)以文件形式保存基本表。 (存储结构可自行设计)welcome精品(3)建立相应的数据字典。2、实现输入数据库记录的功能(insert )。3、实现删除数据库记录的功能(delete )。4、实现修改数据库记录的功能(update )。5、实现
12、显示数据库结构和内容(以表格形式显示)(select* from关系名)。6、实现在已有的关系中添加属性的功能(alter tableadd );7、实现从已有的关系中删除属性的功能(alter tabledrop );6 和 7要求不论关系表中是否有数据,都能正确执行命令,并修改相应的数据字典。8、实现删除表的功能( drop table)。9、实现建立视图的功能,并保存在数据字典中。/ 选作10 、实现删除视图的功能。/ 选作实验四索引的创建及删除(一)实验目的1、了解 SQL语句中的创建索引及删除索引语句的格式和功能。2、掌握主索引、聚集索引及辅助索引的建立及检索方法。3、掌握 B树索引
13、的建立及检索方法。4、掌握删除索引的方法。(二)实验内容与步骤1、为某关系的主属性建立索引。/ 当指定的属性有序时建立的索引2、为某关系的非主属性建立索引。/ 当指定的属性无序时建立的索引welcome精品3、为某关系的某属性建立B树索引。 / 选作4、删除建立的索引。实验五查询功能(一)实验目的1、熟悉 SQL语句中的查询语句的格式和功能。2、掌握查询处理算法,包括选择、投影、连接算法。要求:能够处理多个表的连接操作;查询条件包括and 、or 、 = 、< 、> 。(二)实验内容与步骤1、实现全关系选择操作(select * from关系名)。2、实现单关系的投影操作(sele
14、ct属性名列表from关系名)。3、实现单关系的选择操作(select * from关系名 where条件表达式)。4 、实现单关系的选择和投影操作(select属性名列表from关系名where选择条件)。/ 选择条件是指“属性名操作符 常量”形式的条件5、实现两个关系和多个关系的连接操作(select* from关系名列表where连接条件)。/ 选择条件是指“属性名操作符 属性名”形式的条件6、实现两个关系和多个关系的选择和连接操作(select * from关系名列表 where选择条件和连接条件)。7、实现两个关系和多个关系的投影和连接操作(select属性名列表from关系名列表w
15、here连接条件)。7、实现多个关系的选择、投影和连接操作(select属性名列表from关系名列表where条件表达式)。welcome精品8、利用索引属性完成选择操作,记录完成操作花费的时间,在建立索引前的关系上执行同样的选择操作并进行时间代价的比较。9、利用索引属性完成连接操作,记录完成操作花费的时间,在建立索引前的关系上执行同样的连接操作并进行时间代价的比较。10 、实现带视图的查询。 / 选作实验六关系数据库的查询优化(一)实验目的1、了解优化的一般策略。2、掌握关系代数等价变换规则。3、掌握启发式代数优化规则。4、掌握启发式关系代数优化算法。5、掌握基于复杂性估计的查询优化方法。(
16、二)实验内容与步骤1、把查询转换成语法树。2、用高级语言实现启发式关系代数优化算法。(对原始的语法树进行优化处理,生成查询计划,选择代价最小的。)3、采用基于复杂性估计的查询优化方法选择查询执行策略。/ 选作实验七数据库保护( DCL )功能(一)实验目的1、掌握数据库系统的安全性保护机制。2、掌握数据库系统的完整性约束机制。3、了解数据库系统的并发控制技术。welcome精品4、掌握数据库系统的恢复技术。(二)实验内容与步骤1、要求根据数据字典 ( DD )实现对数据库的安全性检查。包括设置口令、密码和授权等。2、根据数据字典( DD )实现对数据库系统的完整性约束机制。3、利用事务的封锁机
17、制实现对事务处理的并发控制。/ 选作4、利用建立日志文件及周期性备份的机制实现对数据库系统的恢复。/选作五、考核标准在读书工程环节, 学生通过阅读相关的参考书目,对课程设计的各个实验环节进行理论学习、实验分析与设计、编码实现、最后进行分析与总结,通过提交总结报告的形式进行考核,并列出参考书目,字数不少于5000 字。读书环节部分占课程总成绩的15% 。本课程设计的实验环节要求每个学生完成全部七个实验。完成全部实验的学生经测试答辩通过, 方可得到学分。 不合格者需要重修。 每个实验需在规定时间内完成,成绩达到及格以上方可进行下一个实验,每个实验题目有各自的分值。实验环节占课程总成绩的85% 。实
18、验教学项目、时间安排及分值分配如下表:序实验项目内容提要时间分有关说明号安排数welcome精品关系数据了解 DBMS 和 SQL 的概貌。要求:实验 1 至实第4 周实库SQL语熟练掌握SQL的数据定验4必做,实验 5和|5验言的使用义、数据操纵、完整性控实验 6 任选。完成第4 周分一制等语句及其功能。任选题目的学生(2学时)可加分。关系数据完成给定 SQL 语句的词法说明:( 1 )要求写库SQL语和语法分析工作,进一步出各语句的文法,言的词法了解 DBMS 中数据字典的实现相应的语法和语法分作用。生成查询语句的中分析器,验证输入析间表示形式,为后续的查的语句是否符合第4 周实询优化实验
19、打好基础。相应文法的规范。|10验( 2 )如果无法写第5 周分二出文法,可以通过(4 学时)字符串扫描分析等其它途径实现对输入语句的验证工作,但要适当减分。welcome精品创建数据建立任意结构的关系,实要求:实验内容的第6 周实库及数据现元组的增删改操作,实1-8 必做, 9 、 10|15验操作功能现属性的增删操作,实现任选,完成任选题第8 周分三建立视图功能,实现表和目的学生可加分。(8 学时)视图的删除功能。索引的创实现创建和删除索引功要求:实验内容的第8 周实建及删除能。第1、2和3必做其|10验一, 4 步任选,完第9 周分四成任选题目的学(4 学时)生可加分。查询功能实现无索引
20、关系上的选要求:实验内容的择、投影、连接操作;实第 1-9 必做, 10 任第10周实现索引关系上的选择、投选,完成任选题目|25验影和连接操作,并与非索的学生可加分。第12周分五引关系上的相应操作比较(8 学时)时间代价;实现带视图的选择、投影和连接操作。关系数据掌握关系数据库的查询优要求:实验内容的第12周实库的查询化技术,实现启发式关系第 1 、2 步必做,第|10验优化代数优化算法以及基于复3 步任选,完成任第12周分六杂性估计的查询优化方选题目的学生可(2 学时)法。加分welcome精品数据库保根据数据字典( DD )实现要求:实验内容的实护 功 能对数据库的安全性检查和第 13-
21、第 1 、2 步必做,第10验(DCL)完整性约束机制。实现对13 周3 、4 步任选,完成分七事务处理的并发控制和数(2 学时)任选题目的学生据库系统的恢复。可加分。六、参考书目1、数据库系统原理(第 2 版)。作者:李建中、王珊出版社:电子工业出版社出版日期: 2004 年 9 月本书全面系统地介绍了数据库系统的理论、技术和方法,并介绍了适应于新一代数据库应用的数据库新技术。本书分为基础篇、 设计篇、实现篇和新技术篇。基础篇由四章组成,介绍了数据库的基本概念、 数据库和数据库系统的体系结构、关系数据库系统、 层次和网状数据库系统以及数据库的安全性与完整性约束。设计篇由五章组成, 讨论了数据
22、库设计的五个基本步骤和设计方法,并介绍了实体联系模型、扩展的实体联系模型和关系数据库的函数依赖理论。实现篇由七章组成,介绍了数据库的物理存储结构、数据字典、关系代数操作算法、查询优化方法和事务处理技术。 新技术篇由六章组成, 介绍了新一代数据库应用、 新一代数据库应用对数据库系统的要求和新一代数据库技术。本书内容丰富,系统性强,具有新的知识体系结构,理论与实践结合,可作为计算机专业本科生和研究生数据库课程的教材或参考书,也可以供从事数据库教学与科研工作的教师和科技工作者参考。welcome精品2、数据库系统概念(第 5 版)。译者:杨冬青、马秀莉、唐世渭等出版社:机械工业出版社出版日期: 20
23、06 年 10 月本书是经典的数据库系统教科书database system conoepts的最新修订版,全面介绍数据库系统的各种知识,透彻阐释数据库管理的基本概念。本书内容丰富,不仅讨论了数据库查询语言、 模式设计、数据仓库、数据库应用开发、基于对象的数据库和xml 、数据存储和查询、事务管理、数据挖掘与信息检索以及数据库系统体系结构等方面的内容,而且对性能评测标准、 性能调整、 标准化以及空间与地理数据、事务处理监控等高级应用主题进行了广泛讨论。本书既可作为高年级本科生或低年级研究生的数据库课程教材,也可供数据库领域的技术人员参考。本书是数据库系统方面的经典教材之一。国际上许多著名大学包
24、括斯坦福大学、耶鲁大学、得克萨斯大学、康奈尔大学、伊利诺伊大学、印度理工学院等都采用本书作为教科书。 我国也有许多所大学采用本书以前版本的中文版作为本科生和研究生的数据库课程的教材和主要教学参考书,收到了良好的效果。本书调整和新增内容:调整了第4 版的讲授顺序。首先介绍sql 及其高级特性,使学生容易接受数据库设计的概念。新增数据库设计的专门讨论。彻底改写和更新了基于对象的数据库和xml的相关内容。重新组织数据挖掘和信息检索的内容,增加了对数据库系统postgresql的实例研究。3、数据库系统实现(第 2 版)。译者:杨冬青吴愈青等welcome精品出版社:机械工业出版社出版日期: 2010
25、 年 6 月本书是斯坦福大学计算机科学专业数据库系列课程第二门课的教科书。书中对数据库系统实现原理进行了深入阐述,并具体讨论了数据库管理系统的三个主要成分存储管理器、查询处理器和事务管理器的实现技术。此外,第2 版充分反映了数据管理技术的新进展,对内容进行了扩充, 除了在第 1 版中原有的“信息集成”一章(第10 章)中加入了新的内容外,还增加了两个全新的章:“数据挖掘”(第11 章)和“数据库系统与互联网”(第12 章)。本书适合作为高等院校计算机专业研究生的教材或本科生的教学参考书,也适合作为从事相关研究或开发工作的专业技术人员的高级参考资料。4、Oracle 实用教程(第 3 版)。作者
26、:郑阿奇出版社:电子工业出版社出版日期: 2011 年 1 月本书以当前流行的Oracle11g 作为平台,分别介绍Oracle 教程、 Oracle实验、综合应用实习和附录。 Oracle 教程部分比较系统地介绍了Oracle 11g (中文版)的主要功能, 并且通过实验对主要内容进行操作和编程训练。实习部分比较系统地介绍了VB 6.0/Oracle 、PB 11.5/Oracle 、ASP/Oracle 、ASP.NET 3.5( C#) / Oracle 和 Java EE( Struts 2 ) /Oracle 的应用方法。只要阅读本书,结合上机操作指导进行练习和实习模仿,就能在较短的
27、时间内基本掌握Oracle11g 及其应用技术。本书可作为大学本科、大专和高职有关课程教材,也可供广大数据库学习、welcome精品应用开发人员参考。5、Oracle 入门很简单。作者:张朝明出版社:清华大学出版社出版日期: 2011 年 1 月本书从初学者的角度出发,由浅入深、循序渐进地介绍了oracle 数据库开发的基础知识。书中对数据库基本理论及其在数据库开发过程中的应用也有详细介绍。书中也列举了大量示例,可供读者演练。本书共分 5 篇。第 1 篇介绍了数据库的基本知识,包括数据库基础、实体-联系模型、 oracle 数据库与数据表;第2 篇介绍了 oracle pl/sql的基本知识,
28、包括 sql 查询、更新数据、字符型处理、数值型处理、日期型处理、复杂数据处理、控制语句;第 3 篇以数据库对象为主线讲述了包括视图、约束、游标、触发器、序列、用户角色与权限控制、函数与存储过程等内容;第 4 篇则重点讲述了oracle 性能优化、一致性与事务管理、并发控制等内容;第5 篇讲述了 oracle在主流程序开发语言( java 、c# )中的应用。本书内容丰富,覆盖面广,适合 oracle 初学者快速入门, 也适合已有 oracle数据库基础的人员完善自己的oracle 知识体系。另外,对于大中专院校和培训班的学生,本书更是一本不可多得的教材。6、SQL Server 2008编程
29、入门经典(第3 版)。作者:(美)韦拉著,马煜,孙晧译出版社:清华大学出版社出版日期: 2010 年 1 月welcome精品本书由浅入深逐步介绍了SQL Server 数据库的高级主题, 重点讨论了 SQLServer 2008的特殊功能以及与其他编程环境的不同之处。作者Robert Vieria是 Microsoft SQL,Server 方面的权威,他采用通俗易懂的方法揭示了SQLServer-2008核心组件的重要更改。 首先概述了数据库设计的概念,介绍了如何用 SQL Setver 2008实现这些基本概念。然后,讲述了RDBMS (关系数据库管理系统)的功能和它在开发系统架构方面的
30、优势。SQL Server 2008的新增内容和更改包括: DATE 和 TIME 数据类型、 hierarchyID数据类型、 MERGE 命令和多行插入,以及递归查询等。SQL Server 2008编程入门经典 (第 3 版)旨在帮助您快速地掌握Microsoft SQL Selwer2008的编程技术。7、数据库技术与应用SQL Server2008 。作者:胡国胜,易著梁出版社:机械工业出版社出版日期: 2010 年 1 月本书系统全面地阐述了数据库的基本原理及应用。全书内容围绕图书馆管理数据库系统展开,系统地介绍了SQLServer2008 数据库的应用;书中实训环节使用宾馆管理信息系统,充分体现了“项目驱动、案例教学、理论与实践相结合”的教学理念。 通过最后的综合应用实例的学习,读者可以进一步掌握实际而又全面的数据库应用知识。本书以培养学生的数据库开发能力为目标,内容新颖,通俗易懂,实用性强,适合作为高
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国集线器行业前景规划及投资潜力分析报告
- 2025-2030年中国铸造扣件市场发展现状及前景趋势分析报告
- 2025-2030年中国蚝油酱行业需求规模及发展趋势预测报告
- 2025-2030年中国草柳编制工艺品市场运营状况及投资规划研究报告
- 2025-2030年中国自动支票打字机专用色带行业运行态势及发展战略分析报告
- 2025-2030年中国羟丙基甲基纤维素行业十三五规划与发展策略分析报告
- 2025-2030年中国纯棉内衣市场运营状况及发展前景分析报告
- 2025-2030年中国科技地产行业竞争现状及投资战略研究报告
- 2025-2030年中国硫酸氧钒行业风险评估规划研究报告
- 2025-2030年中国真空冻干蔬菜行业运行状况及发展趋势预测报告
- 三方公司合作协议书范本
- 护理责任组长续聘竞聘
- 2024-2025学年第二学期教学教研工作安排表
- 2025年贵州云上产业服务有限公司招聘笔试参考题库含答案解析
- 2025年南京信息职业技术学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 2025-2030年中国天然气行业发展分析及发展趋势预测报告
- 《雷达信号处理基础》课件
- 2025届贵州省兴义市三年级数学第一学期期末达标检测试题含解析
- 人教版地理七年级下册7.1.2 亚洲的自然环境(课件39张)
- 外研版(三起)小学英语三年级下册Unit 1 Animal friends Get ready start up 课件
- 2025年交通运输部广州打捞局招聘事业编制人员13人历年管理单位笔试遴选500模拟题附带答案详解
评论
0/150
提交评论