“数据库原理及应用”是计算机科学与技术专业、软件工程专业、网络工程等专业重要的专业基础课程。
本课程系统讲述数据库系统的基础理论、基本技术和基本方法。
本课程内容丰富全面,分为基础篇和高级篇2部分讲解。
通过本课程基础篇的学习,学生可以系统地掌握数据库系统的基本原理,能熟练使用SQL语言在某一个数据库管理系统上进行数据库检索和操作,掌握数据库安全性和完整性的基本概念和基本方法。并能够在某一个数据库管理系统上进行实验。
通过本课程高级篇的学习,学生可以系统地掌握数据库规范化理论和数据库设计的方法与步骤,具有设计和开发数据库应用系统的基本能力;掌握数据库事务处理、并发控制与恢复的基本技术、初步掌握数据库查询处理和优化的概念。并能够在某一个数据库管理系统上进行实验验证。
本课程的知识内容和技术方法,对从事现代数据管理技术的应用、开发和研究的人员都是重要而必备的基础。
本课程的特点是,理论联系实际。我们不仅希望学生通过阅读和书面习题掌握本课程的内容,还要求学生完成实验项目。为此我们针对课程知识点设置了相应的实验,锻炼学生实际动手能力,启发学生对理论知识的思考和理解,达到理论联系实际的教学效果。
本课程获得通过的资格,由以下因素决定:
1. 完成课后单元测验题,得分占总评分数的20%。本课程共安排7次单元测验,具体时间会在课程公告中提前一周提醒大家;
2. 完成要求的实验题,得分占总评分的20%。本课程共安排8次实验,具体时间以及实验内容会在公告中提前通知大家;
3. 完成第一次考试,得分占总评分数的20%;
4. 完成第二次考试,得分占总评分数的20%;
5. 完成第三次考试,得分占总评分数的20%;
说明:
总评成绩达到85分及以上者,本课程等级为优秀;总评成绩达到60分但未达到85分者,课程等级为合格。
C语言,Java语言
算法与数据结构
离散数学
操作系统
基础篇
-----PART Ⅰ绪论-----
第1讲:初识数据库系统
引言;数据库的4个基本概念;数据库技术的产生和数据库系统的特点
第2讲:数据库系统的核心:数据模型
概念模型;数据模型的组成要素;层次模型,网状模型,关系模型
第3讲:数据库系统的结构
数据库系统的三级模式和二层映像
第4讲:数据库系统的组成
数据库系统的组成
-----PART Ⅱ关系数据库-----
第5讲:关系数据结构及关系的完整性
关系数据库与形式化定义;实体完整性、参照完整性、用户定义的完整性
第6讲:关系代数--传统集合操作
传统的集合操作:并、差、交、笛卡尔积4种运算
第7讲:关系代数--关系特有操作
专门的关系运算:选择、投影、连接、除运算
第8讲:关系代数--综合训练
关系代数的综合练习
第9讲:关系演算--元组关系演算
元组关系演算
第10讲:关系演算--域关系演算语言QBE
域关系演算
-----PART Ⅲ SQL-----
第11讲:SQL概述与数据定义
SQL的产生与发展;SQL的特点;SQL的基本概念;数据定义
第12讲:数据查询--单表查询
SQL语句与单表查询
第13讲:数据查询--连接查询
SQL语句与连接查询
第14讲:数据查询--嵌套查询
SQL语句与嵌套查询
第15讲:数据查询--集合查询
SQL语句与集合查询
第16讲:数据的更新与空值的处理
数据的更新语句;空值的处理
第17讲:视图
视图的定义、查询、更新、作用
-----PART Ⅳ数据库安全性-----
第18讲:数据库安全性概述
数据库安全性概述
第19讲:数据库安全性控制
身份鉴别、存取控制、自主存取控制;数据库角色及强制存取控制
第20讲:视图机制
视图、审计、数据加密及其他安全性保护
-----PART Ⅴ数据库完整性------
第21讲:数据库的完整性
实体完整性、参照完整性和用户定义的完整性
第22讲:约束命名子句及断言
约束命名子句;断言
第23讲:触发器
触发器的概念、定义、执行、删除
高级篇
-----PART Ⅵ 绪论&关系数据理论------
第24讲 《数据库系统概论(高级篇)》前言
介绍数据库学科体系以及《基础篇》《高级篇》的课程安排。
第25讲 关系数据理论
讲解为什么要学习关系数据理论,什么是数据依赖。关系数据理论是关系数据库的重要理论基础也是数据库设计的有力工具。
第26讲 函数依赖及范式的概念
讲解什么是函数依赖,关系范式的概念及规范化的基本思想。
第27讲 函数依赖公理系统
简单介绍函数依赖推理规则和最小覆盖的概念,关系模式分解的准则。
------PARTⅦ 数据库设计------
第28讲 数据库设计
讲解数据库设计的方法和基本步骤。
第29讲 数据库设计之需求分析
讨论需求分析的步骤和重要性,需求分析中的数据字典。
第30讲 E-R模型及设计
讲解概念模型的主要方法—E-R模型,如何从应用语义抽象出E-R图,如何完成概念结构的设计。
第31讲 数据库逻辑设计
讨论如何把E-R图转换为关系模型的方法。
第32讲 数据库物理设计
数据库物理设计的主要内容和方法。
第33讲 数据库的实施和维护
简单介绍数据库实施建设过程和运维工作的主要内容。
-----PARTⅧ 数据库编程------
第34讲 数据库编程之嵌入式SQL部分
突破SQL语言的限制,介绍从高级语言中如何访问和管理数据库中数据的方法。
第35讲 数据库编程之过程化SQL
介绍将一些过程化语句引入SQL语言,从而扩展SQL语言表达能力的方法,包括存储过程和函数等。
第36讲 数据库编程之ODBC
介绍ODBC编程的概念与方法,包括ODBC概念,ODBC API,ODBC工作流程以及实例等。
-----PARTⅨ 关系查询处理和查询优化------
第37讲 关系查询处理
通过一个例子介绍数据库管理系统在接收到一个SQL语句后,如何对其进行处理的完整的过程。包括对选择和连接两个原子操作的实现算法的介绍。
第38讲 关系查询优化
通过一个例子介绍查询优化的概念以及查询优化的重要性,讲解代数优化和物理优化方法。
-----PARTⅩ 数据库恢复技术------
第39讲 事务的基本概念以及数据库恢复概述
介绍什么是事务,事务的基本性质,什么是数据库的恢复技术。
第40讲 故障的种类
介绍各种常见的故障以及各类故障的恢复原理。
第41讲 恢复技术
讲解恢复的实现技术,包括转储和登记日志文件。讨论各类故障的具体恢复策略、具有检查点的恢复技术。
第42讲 数据库镜像
简单介绍如何用数据库镜像应对介质故障。
-----PARTⅪ 并发控制------
第43讲 并发控制概述
讨论并发操作带来的数据不一致性,包括丢失修改、不可重复读和读“脏”数据。
第44讲 封锁
介绍两类基本锁,包括共享锁和排他锁;讲解三级封锁协议;讨论什么是活锁和死锁以及如何解决活锁和死锁问题。
第45讲 并发调度的可串行性
介绍什么是可串行化调度,什么是冲突可串行化调度;讲解两段锁协议。
第46讲 多粒度封锁
介绍什么是封锁的粒度,什么是多粒度封锁;讲解意向锁及其相容矩阵、具有意向锁的多粒度封锁方法。
王珊,萨师煊. 《数据库系统概论(第5版)》,高等教育出版社,2014.9
王珊,张俊.《数据库系统概论(第5版)习题解析与实验指导》,高等教育出版社,2015.7
上机软件:SQL Server2008/2012数据库管理系统
中国人民大学 数据库系统概论精品课程网站:https://www.chinadb.org/