《数据库原理》教学大纲
课程英文名称: Database Theory
课程编码:H23100 学时、学分: 40、2.5
课程类别:学科基础课 适 用 专 业:计算机科学与技术
教学大纲说明
一、课程的性质、教学目的与任务
数据库技术是近年来计算机科学技术中发展最快的领域之一,它已成为计算机信息系统的核心技术和重要基础。这是计算机在信息管理领域中得到广泛应用的必然结果,也是今后若干年内计算机数据处理活动的主要内容和研究课题,数据库系统也将日益广泛地得到应用。它的设计、实现和应用不仅仅是一个实践问题,同时也是一个理论问题。
《数据库原理》课程是高等院校计算机科学与技术专业一门理论性较强的专业课。本课程系统、完整地讲述数据库技术从原理到应用实践的主要内容。主要任务是:通过课堂教学与实验环节的指导,使学生较全面地掌握数据库系统的基本概念和基本原理;深入理解关系数据模型、关系数据理论和关系数据库系统;掌握关系数据库标准语言SQL;掌握数据库设计方法。
二、课程教学的基本要求
数据库原理课是高等院校计算机科学与技术专业中理论与实践紧密结合的专业基础课。本课教学中运用问题教学法、发现式教学法、讨论式教学法、自学式教学法等多种方式组织教学。采用多媒体、互联网及CAI等先进教学手段,加大课堂讲授的信息量,提高效率。在讨论式教学及自学式教学中,引导学生根据案例分析, 将数据建模的理论及与实践相结合,激发了学生学习的积极性, 提高学生的数据建模能力。
通过本课程学习,使学生系统地掌握数据库系统的基本原理和基本技术。要求在掌握数据库系统基本概念的基础上,能熟练使用SQL语言在某一个数据库管理系统上进行数据库操作;掌握数据库设计方法和步骤,具有设计数据库模式以及开发数据库应用系统的基本能力。
三、课程教学对学生知识和能力培养的要求
1.知识要求:
(1) 理解数据库的基本概念和数据库系统的结构原理;
(2) 掌握关系数据模型的概念;
(3) 掌握关系数据库的结构化查询语言SQL;
(4) 掌握规范化理论;
(5) 掌握关系数据库的设计方法;
(6) 掌握关系数据库的完整性控制安全性控制;
(7) 了解数据库恢复技术、并发控制机制、查询优化的原理。
2.能力要求:
(1) 具有设计数据库模式以及开发数据库应用系统的基本能力。
(2) 具有一定的操作数据库管理系统的能力。
四、本课程与相关课程的关系
本课程的先修课程为:《操作系统》、《数据结构》、《离散数学》。
后续课程为:《ORACLE数据库》、《软件工程与建模技术》。
教学大纲
一、理论教学部分
第一章 绪论
主要内容:阐述数据库的基本概念;介绍数据管理技术的进展情况、数据库技术产生和发展的背景;数据模型的基本概念、组成要素和主要的数据模型;概念模型的基本概念及E-R方法;数据库系统的三级模式结构以及数据库系统的组成。
重点:牢固掌握概念模型的基本概念及其主要建模方法E-R方法;掌握关系数据模型的相关概念、数据库系统三级模式和两层映像的体系结构、数据库系统的逻辑独立性和物理独立性等。
难点:本章的难点是需要掌握数据库领域大量的基本概念。此外,数据模型及数据库系统的体系结构也是本章的难点。
教学目标:本章讲解的数据库基本概念和基本知识是学习后续各个章节的基础。学习本章的目的在于掌握基本概念,了解基本知识,为以后的学习打好扎实的基础。培养学生的自学能力、数据建模能力、信息获取与表达能力。
第二章 关系数据库
主要内容:系统地讲解关系数据库的重要概念,并着重对关系模型进行讲解。讲解关系代数、元组关系演算。
重点:掌握关系数据结构及其定义;关系的三类完整性约束的概念。需要举一反三的是:关系代数(包括抽象的语言及具体的语言);关系代数中的各种运算(包括并、交、差、选择、投影、连接、除、及广义笛卡尔积等)、元组关系演算语言ALPHA及域关系演算语言QBE等,能够使用这些语言完成各种数据操纵。
难点:由于关系代数较为抽象,因此在学习的过程中一定要结合具体的实例进行学习。同时,要注意把握由具体语言到抽象语言的原则,即通过对具体语言如ALPHA的学习过渡到对抽象的关系演算的把握。
教学目标: 掌握关系模型的三个组成部分及各部分所包括的主要内容;牢固掌握关系数据结构及其定义;关系的三类完整性约束的概念。为学习后面关系数据库系统打好基础。
第三章 关系数据库标准语言SQL
主要内容:详细介绍关系数据库语言SQL。因为关系数据库系统的主要功能是通过SQL来实现的,因此讲解SQL的同时要进一步讲述关系数据库的基本概念。
重点:熟练正确的使用SQL完成对数据库的查询、插入、删除、更新操作。在使用具体的SQL时,能有意识地和关系代数、关系演算等语言进行比较,了解他们各自的特点。
难点:用SQL语言正确完成复杂查询,掌握SQL语言强大的查询功能。因此在学习过程中一定要多练习,要在安装好的数据库系统上进行实际操作,通过大量练习才能真正达到举一反三的熟练程度。
教学目标:牢固掌握SQL,达到举一反三的掌握SQL的功能。同时通过实践,体会面向过程的语言和SQL的区别和优点。体会关系数据库系统为数据库应用系统的开发提供良好环境,减轻用户负担,提高用户生产率的原因。
第四章 数据库安全性
主要内容:介绍计算机以及信息安全技术标准的进展。详细讲解数据库安全性问题和实现技术。RDBMS实现数据库系统安全性的技术和方法有多种,本章讲解最重要的存取控制技术、视图技术和审计技术。
重点:使用SQL中的GRANT 语句和 REVOKE 语句来实现数据库的实现自主存取控制功能。使用SQL中CREATE? ROLE语句创建角色,用GRANT 语句给角色授权。掌握视图机制在数据库安全保护中的作用。
难点:强制存取控制(MAC)机制中确定主体能否存取客体的存取规则,理解并掌握存取规则为什么要这样规定。
教学目标: 介绍计算机以及信息安全技术标准的进展。详细讲解数据库安全性问题和实现技术。RDBMS实现数据库系统安全性的技术和方法有多种,本章讲解最重要的存取控制技术、视图技术和审计技术。讲解存取控制机制中用户权限的授权与回收,合法权限检查。数据库角色的概念和定义等。
第五章 数据库完整性
主要内容:详细讲解数据库的完整性概念。包括什么是数据库的完整性;数据库的完整性概念与数据库的安全性概念的区别和联系;RDBMS的数据库完整性实现机制。触发器的概念和在数据库完整性检查中的应用。
重点:牢固掌握DBMS完整性控制机制的三个方面,即完整性约束条件的定义、完整性约束条件的检查和违约反应。
难点:RDBMS如何实现完整性的策略,即当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,RDBMS如何进行处理,以确保数据的正确与有效。其中比较复杂的是参照完整性的实现机制。
教学目标:掌握什么是数据库的完整性,掌握用SQL语言定义关系模式的完整性约束条件。了解触发器的概念和在数据库完整性检查中的应用。培养学生的自学能力、信息获取与表达能力、系统级的认知能力和理论与实践能力。
第六章 关系数据理论
主要内容:详细讲解关系数据理论,主要是关系数据库规范化理论。包括关系数据库逻辑设计可能出现的问题;数据依赖的基本概念;范式的概念和判定方法。
重点:了解什么是一个“不好”的数据库模式。什么是模式的插入异常和删除异常。规范化理论的重要意义。牢固掌握数据依赖的基本概念,范式的概念,从1NF到4NF的定义。
难点:能够根据应用语义,完整地写出关系模式的数据依赖集合,并能根据数据依赖分析某一个关系模式属于第几范式。
教学目标:关系数据理论既是关系数据库的重要理论基础也是数据库逻辑设计的理论指南和有力工具。要掌握规范化理论和优化数据库模式设计的方法。培养学生的自学能力、信息获取与表达能力。
第七章 数据库设计
主要内容:讲解数据库设计方法和技术。数据库设计的特点;数据库设计的基本步骤;数据库设计过程中数据字典的内容;数据库设计各个阶段的设计目标、具体设计内容、设计描述、设计方法等。本章内容的实践性较强。
重点:掌握数据库设计步骤和数据库设计过程中的各级模式设计方法。特别是数据库概念结构的设计和逻辑结构的设计,这是数据库设计过程中最重要的两个环节。牢固掌握用E-R图来表示概念模型的方法,掌握E-R图的设计,E-R图向关系模型的转换。
难点: 技术上的难点是E-R图的设计和数据模型的优化,包括对现实世界进行抽象的能力,提取实体、属性、实体型之间的联系,正确划分实体与属性的能力。真正的难点是理论与实际的结合。
教学目标 :掌握数据库设计方法和步骤,了解数据库设计的重要性和数据库设计在信息系统开发和建设中的核心地位。具有设计数据库模式以及开发数据库应用系统的基本能力,能在实际工作中运用这些知识、技术和方法,设计符合应用需求的数据库及其应用系统。培养学生的数据建模能力,系统级的认知能力和理论与实践能力,掌握自底向上和自顶向下的问题分析方法,既能把握系统各层次的细节,又能认识系统总体;既掌握本学科的基础理论知识,又能利用理论指导实践。创新实验能力、科技开发能力。
第八章 关系系统及其查询优化
主要内容:通过实例讲解关系数据库查询优化的重要性和可能性。讲解RDBMS的查询处理步骤;查询优化的基本概念。
重点:了解关系数据库查询优化的重要性。掌握查询处理各个步骤的主要功能。能够把SQL语句转换成查询树,对查询树进行代数优化,转换成优化的查询树。掌握物理优化的基本方法。
难点:能运用本章学习的查询优化知识,对于比较复杂的查询,尤其是涉及连接和嵌套的查询,写出适合RDBMS自动优化的SQL语句。对于RDBMS不能优化的查询需要重写查询语句,进行手工调整以优化性能。
教学目标:掌握查询处理各个步骤的主要功能、代数优化、物理优化的基本方法。了解关系数据库查询优化的重要性。为数据库应用开发中利用查询优化技术提高查询效率和系统性能打下基础。培养学生的自学能力、信息获取与表达能力、系统级的认知能力和理论与实践能力。
第九章 数据库恢复技术
主要内容:讲解事务的基本概念和事务的ACID性质;数据库恢复技术。包括数据库运行中可能发生的故障类型;数据库恢复中最经常使用的技术—数据转储和登录日志文件。讲解日志文件的内容及作用,登记日志文件所要遵循的原则。针对事务故障、系统故障和介质故障等不同故障的恢复策略和恢复方法。具有检查点的恢复技术。数据库镜像功能。
重点:牢固掌握事务的基本概念和事务的ACID性质。要掌握数据库故障恢复的策略和方法。
难点:掌握日志文件的使用,系统故障、介质故障的恢复方法。在实际工作中,则必须正确了解所用的DBMS产品提供的恢复技术和恢复方法,并且能够根据这些机制正确制定系统的恢复策略,保证数据库系统在遇到故障时能及时恢复正常运行,提高抗故障抗灾难的能力。
教学目标:掌握事务的基本概念和事务的ACID性质。了解数据库恢复技术的重要性,针对不同的故障类型,掌握恢复数据库的策略和方法。 培养学生的自学能力、信息获取与表达能力、系统级的认知能力和理论与实践能力。
第十章 并发控制
主要内容:本章讨论数据库并发控制的基本概念和实现技术。包括封锁技术、封锁协议、活锁和死锁的概念、并发调度的可串行性、冲突可串行化调度、两段锁协议、封锁的粒度、意向锁。
重点:掌握并发操作产生的数据不一致性的确切含义;封锁协议与数据一致性的关系;并发调度的可串行性概念。
难点:两段锁协议与串行性的关系、与死锁的关系。具有意向锁的多粒度封锁方法的封锁过程。
教学目标:牢固掌握并发控制的基本概念。了解的数据库并发控制技术的必要性和重要性。培养学生的自学能力、信息获取与表达能力、系统级的认知能力和理论与实践能力。
二、实验教学部分
无。
三、教学时数分配表
序号 | 教学内容 | 课时分配 |
讲授 | 实验 | 上机 | 小计 |
1 | 第一章 绪论 | 2 |
|
| 2 |
2 | 第二章 关系数据库 | 4 |
|
| 4 |
3 | 第三章 关系数据库标准语言SQL | 8 |
|
| 8 |
4 | 第四章 数据库安全性 | 2 |
|
| 2 |
5 | 第五章 数据库完整性 | 2 |
|
| 2 |
6 | 第六章 关系数据理论 | 4 |
|
| 4 |
7 | 第七章 数据库设计 | 8 |
|
| 8 |
8 | 第八章 关系系统及其查询优化 | 2 |
|
| 2 |
9 | 第九章 数据库恢复技术 | 4 |
|
| 4 |
10 | 第十章 并发控制 | 4 |
|
| 4 |
合计 |
| 40 |
|
| 40 |
四、成绩考核与评定方式
成绩评定:本课程成绩由两部分构成:平时成绩(20%)、期末考试成绩(80%)。
平时成绩:根据学生课前预习、上课纪律、出勤情况进行综合评定给出平时成绩。
五、使用教材及主要参考书
1. 《数据库系统概论》,王珊、萨师煊编著,高等教育出版社,2014年9月。
2. 《数据库系统概论学习指导及习题解答》,王珊、朱青编著,高等教育出版社,2015年7月。