数据库技术是计算机科学中发展最快应用最广的技术之一,它已成为计算机信息系统及其应用系统的核心技术和重要基础。本课程是计算机科学与技术、网络工程和物联网工程等专业的核心课程,它综合了前期软件课程的内容,在计算机软件诸课程中起着承前启后的重要作用。
成绩≥60为合格,成绩≥85为优秀
成绩构成:
课程考勤20%,按照教学大纲自学部分占10%
章节作业10%,章节作业成绩,包括教师作业评价和互评成绩
阶段测试15%,章节测试成绩
实验考核20%,实验完成情况考核
期末测试35%,期末考试成绩
计算机操作系统,数据结构,C语言程序设计
第一章 绪论
1、教学目标
理解数据库、数据库系统及数据库管理系统等基本概念、数据库系统的组成。了解数据库技术的产生和发展过程、数据库系统的优点和好处、数据库技术的主要研究领域。掌握数据库系统的核心和基础——数据模型,包括数据模型的三要素、概念模型。掌握数据库系统三级模式和两层映像。
2、教学内容
【线上自学】数据库系统原理简介
【线上自学】数据库基本概念
【线上自学】数据管理技术的产生和发展
【线上自学】数据模型的组成要素
【线上预习,线下强化】概念模型
【线上自学】层次模型、网状模型、关系模型
【线上预习,线下强化】数据库系统模式的概念
【线上预习,线下强化】数据库系统的三级模式结构
【线上预习,线下强化】数据库的两级映像功能与数据独立性
第二章 关系数据库
1、教学目标
了解关系数据库理论产生和发展的过程、元组关系演算、域关系演算。掌握关系代数中的各种运算、关系代数表达查询、关系数据库的重要概念,包括关系模型的数据结构、关系的完整性以及关系操作。
2、教学内容:
【线上预习,线下强化】关系,关系模式
【线上预习,线下强化】关系数据库
【线上自学】基本的关系操作
【线上自学】关系数据语言的分类
【线上预习,线下强化】数据的完整性
【线上预习,线下强化】关系集合运算
【线上预习,线下强化】专门的关系运算
第三章 关系数据库标准语言SQL
1、教学目标
在理解SQL语言的基础上进一步加深对关系数据库系统的基本概念的理解,使这些概念更加具体、丰富。理解视图的概念。掌握SQL语言在数据定义、数据查询、数据更新、数据控制方面的功能、使用嵌入式SQL。
2、教学内容
【线上自学】SQL语言的基本概念、学生课程数据库
【线上自学】模式的定义与删除
【线上预习,线下强化】基本表的定义、删除与修改
【线上预习,线下强化】索引的建立与删除
【教学重点:线上预习,线下强化】单表查询
【教学重点、难点:线上预习,线下强化】连接查询
【教学难点:线上预习,线下强化】嵌套查询
【教学重点:线上预习,线下强化】集合查询
【线上预习,线下强化】视图、授权
【线上自学】SELECT语句的一般格式
【线上预习,线下强化】插入数据
【线上预习,线下强化】修改数据
【线上预习,线下强化】删除数据与空值处理
【线上预习,线下强化】定义与查询视图
【线上自学】更新视图与视图的作用
3、实验内容
实验一 数据库定义与操作语言
第四章 数据库安全性
1、教学目标
了解实现数据库系统安全性的技术和方法。掌握使用SQL语言中的GRANT和REVOKE语句实现自主存取控制。
2、教学内容
【线上自学】数据库安全性概述
【线上自学】用户身份鉴别
【线上预习,线下强化】存取控制
【教学重点、难点:线上预习,线下强化】自主存取控制方法(DAC)
【线上预习,线下强化】授权与回收
【线上预习,线下强化】数据库角色
【线上预习,线下强化】强制存取控制方法(MAC)
【线上自学】审计与加密
【线上自学】其它安全保护
3、实验内容
实验二 安全性语言
第五章 数据库完整性
1、教学目标
了解数据库的完整性约束条件、完整性约束条件的分类。理解DBMS完整性实现的机制,包括完整性约束定义机制、完整性检查机制和违背完整性约束条件时DBMS应采取的动作。掌握用SQL语言定义关系模式的完整性约束条件。
2、教学内容
【重点:线上预习,线下强化】实体完整性
【线上预习,线下强化】参照完整性
【线上预习,线下强化】用户定义完整性
【线上预习,线下强化】完整性约束命名子句
【线上预习,线下强化】触发器
3、实验内容
实验三 完整性语言
实验四 触发器
第六章 关系数据理论
1、教学目标
了解关系规范理论的重要意义、什么是“不好”的模式、什么是插入异常和删除异常。
理解关系的形式化定义、数据依赖的基本概念(函数依赖、多值依赖、部分函数依赖、码、候选码、外码等)、范式的概念、1NF-4NF的定义。
掌握1NF-4NF的应用,各个级别范式中存在的问题和解决方法、根据语义写出数据依赖集合、判断某一关系模式属于第几范式。
2、教学内容
【线上自学】规范化
【线上预习,线下强化】函数依赖
【重点、难点:线上预习,线下强化】范式、1NF、2NF、3NF
【线上预习,线下强化】多值依赖、BCNF、4NF
第七章 数据库设计
1、教学目标
了解数据库设计的特点、数据库物理设计的内容和评价、数据库的实施和维护。理解数据库设计的基本步骤、数据库设计各个阶段的具体设计内容。掌握概念结构的设计(E-R图)和逻辑结构的设计(E-R图向关系模型的转换)。
2、教学内容
【线上自学】数据库设计概述
【线上预习,线下强化】需求分析
【重点、难点:线上预习,线下强化】逻辑结构设计
【重点、难点:线上预习,线下强化】概念结构设计
【线上自学】物理结构设计
【线上自学】数据库实施与维护
3、实验内容
实验五 数据库设计
第八章 数据库编程
1、教学目标
了解应用系统中如何使用编程方法对数据库进行操纵的技术,掌握嵌入式SQL编程、ODBC编程
2、教学内容
【线上预习,线下强化】嵌入式SQL
【线上预习,线下强化】过程化SQL
【线上预习,线下强化】存储过程与函数
【线上自学】ODBC编程
3、实验内容
实验六 存储过程
实验七 数据库应用开发
第九章 关系查询处理和查询优化
1、教学目标
了解关系系统的分类、全关系系统的十二条基本准则;理解关系系统的定义;掌握能关系代数表达式的优化算法,画出查询的语法树以及优化后的语法树。
2、教学内容
【线上自学】查询分析、查询处理
【线上预习,线下强化】查询树、代数优化
【线上自学】物理优化
【线上预习,线下强化】关系系统的查询优化
第十章 数据库恢复技术
1、教学目标
了解数据库的一致性状态、故障的种类、数据库镜像。理解事物的基本概念、事务的ACID特性、恢复实现技术、日志文件的内容及作用、登记日至文件遵循的原则。掌握恢复的基本原理、针对不同故障的恢复的策略和方法。
2、教学内容
【线上自学】事务的基本概念
【线上自学】数据库恢复概述与故障的种类
【线上预习,线下强化】恢复的实现技术
【线上预习,线下强化】恢复策略
【线上预习,线下强化】具有检查点的恢复与数据库镜像
3、实验内容
实验八 数据库备份与还原
第十一章 并发控制
1、教学目标
了解数据库并发技术的必要性、活锁和死锁的概念。理解并发操作可能产生的数据不一致性、封锁的类型、封锁粒度的概念、多粒度封锁方法。掌握三级封锁协议、封锁协议与数据不一致性的关系、并发调度、两段锁协议。
2、教学内容
【线上自学】并发控制概述、封锁
【线上预习,线下强化】三级封锁协议
【线上预习,线下强化】活锁和死锁
【线上预习,线下强化】发调度的可串行性
【线上预习,线下强化】两段锁协议
【线上自学】封锁的粒度
课程教材:
数据库系统概论(第5版),王珊、萨师煊著,高等教育出版社
参考书:
(1)《数据库处理基础、设计和实现》 David M.Kroenke 著,师伯乐等编译。电子工业出版社;
(2)《数据库系统原理》 师伯乐编著。高等教育出版社;
(3)《数据库系统基础》Ramez Elmasri、Shamkant B.Navathe著,邵佩英、张坤龙灯译;
(4)《数据库系统概论(第5版)实验指导》 王珊, 张俊 高等教育出版社,2008;
参考网络教学资源:
https://otn.orcale.com/products/orcale9i/content.html
https://www-3.ibm.com/software/data/db2/udb/features.html
https://msdn.microsoft.com/library
https://www.chinadb.org
https://abook.hep.com.cn/187532