前 言
数据库原理物联网专业的一门专业课。通过本课程的学习,使学生系统掌握数据库系统基本概念、理论、主要功能、工作原理和实现技术(特别是SQL查询语句的使用);具有良好的数据库设计思想;通过上机实践,理解和掌握数据库设计基本方法,为以后在数据库管理系统平台上利用各种语言开发数据库应用系统奠定基础。
【课程目的】数据库原理课程的主要任务是,研究如何存储、使用和管理数据,通过课堂教学、实验等环节,要求学生掌握数据库的基本原理、方法和应用技术,能有效使用现有的数据库管理系统和软件开发工具,掌握数据库结构的设计和数据库应用系统的开发方式。
【课程内容简介】本课程的主要内容包括:绪论、关系模型和关系代数、SQL语言、数据库完整性和安全性、关系数据理论、数据库设计、数据库系统管理、并发控制等。
【教学要求】通过本课程的学习,要求学生掌握:数据库的基本概念、关系数据模型、关系代数基本运算和数据规范化理论;关系型数据库标准语言SQL;数据库设计的基本方法和步骤;数据库存储技术、恢复技术、并发控制、数据库安全性和完整性的基本技术,了解数据库技术的新发展,借助于某一开发工具,独立开发某方面的数据库应用系统。
本专业教学总时数共64学时,其中实验16学时。
教学目的要求、内容和方法
第一章 绪论
【目的要求】
1.了解数据库的发展史的三个阶段各自的特点。
2.掌握数据模型以及其相关概念。
3.掌握数据库的体系结构。
4.熟悉数据库系统的组成,特点和分类。
【教学内容】
第一节 数据库系统概述
数据库技术的基本概念:信息与数据、数据库、数据库管理系统、数据库系统。
数据管理技术的发展历程:人工管理阶段、文件系统管理阶段、数据库系统管理阶段,三个阶段的特点和缺陷。
数据库系统的特点
第二节 数据模型
1.数据模型的基本概念、分类和组成三要素。
2.概念模型(ER图)的基本概念和表示方法。
3.层次模型、网状模型和关系模型的特点和优缺点。
第三节 数据库系统结构
1.数据库的三级结构:模式,外模式和内模式。
2.两级映像:模式/内模式映像:唯一;外模式/模式映像:多个。
3.两级数据独立性:物理数据独立性,逻辑数据独立性。
【授课方法与学时】
课堂讲授,共6学时。其中每小节各2学时。
第二章 关系模型与关系代数
【目的要求】
1.掌握关系模型的基本概念。
2.了解关系操作及关系数据语言的分类。
3.掌握关系的三类完整性约束
4.掌握关系代数的基本运算以及关系代数表达式。
【教学内容】
第一节 关系数据结构和关系操作
1.关系数据模型的基本概念:域、笛卡尔积、关系、元组、属性、候选码、主码等
2.关系模式的基本概念:关系模式、关系数据库。
3.基本的关系操作:查询和更新。
4.关系语言的分类:关系代数、关系验算、SQL语言
第二节 关系约束
1.关系模型的三类完整性约束的组成。
2.实体完整性规则及实现。
3.参照完整性规则及实现。
4.用户自定义完整性规则及实现。
第三节 关系代数
1.关系代数的集合运算:并,交,差,笛卡儿积。
2.关系代数的关系运算:选择,投影,连接,除。
3.讲解关系代数表达式具体实例。
【授课方法与学时】
课堂讲授,8学时。其中关系数据结构和操作2学时,关系约束2学时,关系代数4学时。
第三章 关系数据库语言SQL
【目的要求】
1.了解SQL的发展,特点和组成。
2.掌握SQL的数据定义功能:数据库、基本表和视图的创建和撤销。
3.掌握SQL的数据查询功能:SELECT语句。
4.掌握SQL的数据更新功能:INSERT,UPDATE,DELETE。
【教学内容】
第一节 SQL概述和数据定义
1.SQL的产生与发展,特点。
2.SQL的数据定义功能:数据库database、基本表table和视图view的创建和撤销。
3.SQL实现完整性约束条件:PRIMARY KEY; FOREIGN KEY ;CHECK子句。
第二节 数据查询
1.SELECT语句的一般语法格式及执行方式。
2.单表查询:select,where,*,order by等的用法。
3.多表查询:联接查询,嵌套查询和相关子查询。
4.把关系代数表达式转换成相应的SELECT字句的写法。
5.聚合函数:count,sum,avg,max,min等。
6.数据分组:group by,having等。
7.集合操作:union,intersect,except。
第三节 数据更新
插入数据(insert):插入常量,插入子查询的结果。
更新数据(update)。
删除数据(delete)。
注意更新和删除数据时,条件和结果不属于同一张表时,where子句中子查询的使用。
【授课方法与学时】
课堂讲授和上机实践操作,共16学时(8理论学时+8实验学时)。其中,概述和数据定义4学时(2理论+2实验),数据查询8学时(4理论+4实验),数据更新4学时(2理论+2实验)。
第四章 数据库完整性与安全性
【目的要求】
1.了解完整性和安全性的基本概念。
2.掌握数据库的完整性约束规则。
3.掌握数据库的安全性控制技术。
4.了解触发器机制。
【教学内容】
第一节 数据库完整性
数据库完整性基本概念和组成。
SQL实现实体完整性:PRIMARY KEY。
SQL实现参照完整性:FOREIGN KEY。
SQL实现自定义完整性:UNIQUE,NOT NULL,CHECK。
5.SQL的触发器。
第二节 数据库的安全性
安全性的概念和安全标准。
2.数据库安全性控制技术:
(1)用户标识和鉴别。
(2)存取控制方法和实施:DAC和MAC,授权机制GRANT REVOKE。
(3)视图机制。
(4)审计
(5)数据加密。
【授课方法与学时】
课堂讲授,4学时。每小节2学时。
第五章 关系数据理论
【目的要求】
1.掌握函数依赖的定义,推理规则,FD和关键码的关系。
2.掌握关系模式的范式:1NF,2NF,3NF,BCNF的定义。
3.掌握关系模式的分解特性:无损分解和保持函数依赖的测试方法。
4.掌握关系模式的分解方法。
【教学内容】
第一节 关系模式规范化
关系模式设计中的问题:冗余和异常问题。
函数依赖FD的定义和分类。
候选码的定义及求解方法。
第二节 范式
第一范式(1NF)的定义。
第二范式(2NF)的定义。
第三范式(3NF)的定义
BCNF的定义
第三节 数据依赖的公理系统
1.逻辑蕴涵的概念。
2.Armstrong公理及推论。
3.函数依赖集的闭包:F+。
4. 属性集的闭包:A+
5.FD集等价的定义与判断方法。
6.最小依赖集Fmin。
第四节 关系模式的分解
模式分解的概念。
无损分解的定义和检验方法:chase算法和二项分解定理。
保持函数依赖的分解的定义和检验方法。
模式分解的算法:分解成3NF和BCNF的算法。
【授课方法与学时】
课堂讲授,8学时。每小节2学时。
第六章 数据库设计
【目的要求】
1.熟悉数据库系统的生存期。
2.掌握数据库设计的具体步骤。
3.熟悉数据库设计中每步的具体实现方法,输入和输出。
4.掌握ER模型的设计以及ER模型向关系模型的转换方法。
【教学内容】
第一节 数据库设计概述
数据库设计的概念和目的。
数据库设计的方法。
数据库设计的步骤:6个阶段
第二节 需求分析
1. 需求分析阶段的任务,方法
2. 需求分析的表示:数据流图和数据字典
第三节 概念结构设计
概念设计阶段概述与策略
ER模型:局部设计,全局设计及实例
第四节 逻辑结构设计
1. 逻辑设计阶段概述
2. ER模型向关系模型的转换规则
第五节 物理设计、数据库的实施和维护、应用实例
物理设计阶段概述及步骤
实施与维护阶段的任务
具体实例讲解
【授课方法与学时】
课堂讲授和上机实践操作,共14学时(6理论学时,8实验学时)。
第七章 数据库系统管理
【目的要求】
1.熟悉数据库管理员DBA的职责。
2. 掌握事务的概念和ACID性质。
3.掌握数据库的故障类型及恢复策略。
4.掌握具有检查点的恢复技术。
【教学内容】
第一节 数据库恢复技术
数据库管理员DBA的职责
事务的定义、ACID性质
故障类型:事务故障、系统故障、介质故障和计算机病毒
恢复的实现技术:数据转储和建立日志文件
第二节 恢复的策略
1. 事务故障的恢复:日志:UNDO
2. 系统故障的恢复:日志:REDO和UNDO
3. 介质故障的恢复:备份+日志:REDO和UNDO
4. 具有检查点的恢复:检查点记录
5. 数据库镜像
【授课方法与学时】
课堂讲授,4学时,每小节各2学时。
第八章 并发控制
【目的要求】
1.了解并发控制带来的问题。
2. 掌握并发控制的方法:封锁机制。
3.掌握活锁和死锁的概念和解决方法。
4.熟悉并发调度的可串行化的实现方法。
【教学内容】
第一节 并发控制
并发操作带来的3个问题:丢失修改、不可重复读、读“脏”数据
封锁机制:X锁、S锁,以及三级封锁协议
第二节 并发实现
1.活锁和死锁的概念及解决方法
2.并发调度的可串行化:事务调度的概念,可串行化的实现
【授课方法与学时】
课堂讲授,4学时,每小节各2学时。
学时分配安排
章序 |
教学内容 |
理论学时 |
实验学时 |
一 |
第一节 数据库系统概述 |
2 |
|
|
第二节 数据模型 |
2 |
|
|
第三节 数据库系统结构 |
2 |
|
二 |
第一节 关系数据结构和关系操作 |
2 |
|
|
第二节 关系约束 |
2 |
|
|
第三节 关系代数 |
4 |
|
三 |
第一节 SQL概述和数据定义 |
2 |
2 |
|
第二节 数据查询 |
4 |
4 |
|
第三节 数据更新 |
2 |
2 |
四 |
第一节 数据库完整性 |
2 |
|
|
第二节 数据库的安全性控制 |
2 |
|
五 |
第一节 关系模式规范化 |
2 |
|
|
第二节 范式 |
2 |
|
|
第三节 数据依赖的公理系统 |
2 |
|
|
第四节 关系模式的分解 |
2 |
|
六 |
第一节 数据库设计概述 |
1 |
|
|
第二节 需求分析 |
2 |
|
|
第三节 概念结构设计 |
1 |
|
|
第四节 逻辑结构设计 |
1 |
|
|
第五节 数据库物理设计,实施与维护 |
1 |
8 |
七 |
第一节 数据库恢复技术 |
2 |
|
|
第二节 恢复的策略 |
2 |
|
八 |
第一节 并发控制 |
2 |
|
|
第二节 并发实现 |
2 |
|
|
合计 |
48 |
16 |
教材:
《医药数据库系统原理与应用 》,杜建强,胡孔法 主编.ISBN 9787513245487 中国中医药出版社,2017年12月
主要参考书目
1.《数据库系统概论(第5版)》.王珊,萨师煊主编.高等教育出版社,2014年9月
2.《数据库原理与技术(第三版)》.尹为民.清华大学出版社,2014年5月
3.《数据库原理与应用教程》.杨俊生.清华大学出版社,2016年8月
4.《新编数据库原理习题与解析》,李春葆主编.清华出版社,2013年5月