课程概述

本课程系统主要讲述数据库系统的基础理论、基本技术和基本方法。介绍关系数据库标准语言—SQL,数据模型,数据库系统的模式结构,关系模型与关系代数运算,关系模式的规范化设计理论,数据库的安全管理、完整性策略、恢复技术、并发控制方法、触发器和存储过程,数据库设计的步骤和数据库实施,数据库应用系统的体系结构,数据库技术的新发展,如面向对象数据库技术、分布式数据库、XML数据库、大数据管理与NoSQL、数据仓库与数据挖掘技术等。

本系列课程的特色:(1)本课程是一门理论性为基础、应用性为目标,理论应用相结合的计算机类主干课程;(2)抽象内容的实例化讲解是本课程的特色,通过大量具体示例,来阐释数据库相关的抽象概念和原理;(3)知识学习与案例点评相结合是本课程的特色,本课程包含数据建模和数据库设计相关的内容,重要的是知识的运用,案例点评则成为知识运用能力训练的重要手段;(4)问题导引的知识学习是本课程的特色,深入浅出,图文并茂,案例配合,面向问题地阐释数据库系统的核心内容。本课程将为学生从事大型信息系统软件的设计、开发和应用打下基础,也将为学生今后从事大规模数据的存储、操纵和分析奠定很好的基础。


证书要求

该课程的考核强调过程化考核。其总成绩分为进程性成绩和期末考试成绩两大部分,而进程性成绩主要考核学生的作业、实验能力和课堂讨论表现几个方面。各个环节所占比例及基本要求如下:

1)期末考试:占总成绩的50%。要求:试卷难度适中,原则上要求填空、选择、判断、名词解释、简答等基础性、记忆性题目分值不超过总试卷的30%,加大综合性题目的比例,重在考查学生运用知识解决复杂软件工程问题的能力。

2)课内外实验:占总成绩的24%。要求:本课程分别设置四次课内实验和四次课外实验,每次实验提前布置给学生,要求学生通过课外自学、查阅文献与资料、熟悉相关实验环境等环节,进行实验预习,以保证实验效果。通过课内外实验,加强学生软件领域复杂工程实践的分析能力、资料搜索能力、综合运用计算机科学和工程技术完成实验设计与实施,并对实验结果进行分析的能力。

3)作业:占总成绩的15%。要求:任课教师为每个知识模块都应布置具有一定难度的偏向工程性质的课后题目,共5次作业,以锻炼学生运用数据库基础知识和本专业基本理论解决实际工程问题的能力。也可以将课内实验的内容进行拓展,作为课外实践布置给学生作为课后作业,以巩固知识或拓展思维。对于作业中的共性问题,教师须在课堂统一讲解,以帮助学生提高和进步。

4)课堂表现:占总成绩的11%。要求:从学生上课是否专心听讲、回答教师提问是否正确、课堂小测验和分组讨论是否积极、正确、有独特见解等几方面进行考核,以活跃课堂气氛,提高课堂教学效果。


预备知识


应学习过相关的先修课程《离散数学》《数据结构》《操作系统》等。与先修课程的关系如下图示意。

授课大纲

第1讲-初步认识数据库系统

000-数据库系统课程简要介绍(9分47秒)

100-本讲学习什么(1分40秒)及第1讲教学课件PDF

101-为什么要学习数据库系统(4分41秒)

102-什么是数据库(7分11秒)

103-什么是数据库系统(6分25秒)

104-从用户角度看数据库管理系统(9分39秒)

105-从系统角度看数据库管理系统(9分51秒)

106-数据库系统课程学习什么(9分43秒)

107-回顾本讲学习了什么(1分42秒)

第1讲模拟练习题

【特别讨论】畅想一下你学习数据库系统课程的收获

第1讲测验

第2讲-数据库系统的结构抽象与演变

200-本讲学习什么(1分39秒)及第2讲教学课件PDF

201-数据库系统的标准结构(15分15秒)

202-什么是数据模型(11分41秒)

203-数据库系统的演变之一(15分05秒)

204-数据库系统的演变之二(13分12秒)

205-回顾本讲学习了什么(2分47秒)

第2讲模拟练习题

第2讲测验

第3讲-关系模型之基本概念

300-本讲学习什么(44秒)及第3讲教学课件PDF

301-什么是关系模型(10分50秒)

302-什么是关系(13分26秒)

303-关系有什么特性(7分12秒)

304-候选码与外码(10分16秒)

305-关系模型的完整性(7分50秒)

306-回顾本讲学习了什么(1分03秒)

第3讲模拟练习题

第3讲测验

第4讲 关系模型之关系代数

406-选择操作(9分52秒)

407-投影操作及基本操作小结(6分27秒)

408-交操作(3分54秒)

409-theta连接操作及更名操作(12分09秒)

410-自然连接操作(6分59秒)

411-应用关系代数操作训练(14分48秒)

412-除操作(16分24秒)

413-外连接操作(8分53秒)

414-回顾本讲学习了什么(5分43秒)

第4讲模拟练习题

第4讲测验

400-本讲学习什么(1分13秒)及第4讲教学课件PDF

401-什么是关系代数(5分40秒)

402-并相容性的概念(2分03秒)

403-并操作(3分38秒)

404-差操作(3分17秒)

405-广义积操作(5分29秒)

第5讲 关系模型之关系演算

500-本讲学习什么(1分47秒)及第5讲教学课件PDF

501-什么是关系元组演算(6分44秒)

502-简单运用元组演算公式(9分17秒)

503-存在量词与全称量词(17分17秒)

504-等价变换(8分47秒)

505-四个典型示例(12分39秒)

506-用元组演算实现关系代数操作(4分35秒)

507-什么是域演算(7分58秒)

508-什么是按示例查询-QBE(12分54秒)

509-QBE应用训练(10分52秒)

510-关系演算的安全性(7分06秒)

511-三种关系运算之比较(6分21秒)

512-回顾本讲学习了什么(57秒)

第5讲模拟练习题

第5讲测验

第6讲 SQL语言之概述

600-本讲学习什么(2分38秒)及第6讲教学课件PDF

601-SQL语言概述(8分31秒)

602-利用SQL建立数据库(16分44秒)

603-利用SQL进行基本查询(13分55秒)

604-利用SQL进行多表联合查询(14分11秒)

605-结合SELECT的INSERT语句(7分35秒)

606-结合SELECT的DELETE与UPDATE语句(7分20秒)

607-数据库定义的修正与撤销(4分55秒)

608-用SQL Server进行练习(18分36秒)

609-第6讲回顾本讲学习了什么(2分14秒)

第6讲模拟练习题

第6讲测验

第7讲 SQL语言之复杂查询与视图

700-本讲学习什么(1分25秒)及第7讲教学课件PDF

701-IN子查询(11分47秒)

702-ThetaSome子查询(12分53秒)

703-Exists子查询(11分48秒)

704-结果计算与聚集计算(6分57秒)

705-分组聚集计算与分组过滤(10分38秒)

706-用SQL表达并交差操作(7分20秒)

707-用SQL处理空值(3分53秒)

708-用SQL表达连接与外连接操作(5分35秒)

709-SQL-SELECT小结(4分28秒)

710-SQL视图(14分17秒)

711-第7讲回顾本讲学习了什么(1分14秒)

第7讲模拟练习题

第7讲测验

第8讲 SQL语言与数据库完整性和安全性

800-本讲学习什么(1分04秒)及第8讲教学课件PDF

801-数据库完整性概念及完整性约束规则(8分59秒)

802-数据库完整性分类(4分16秒)

803-SQL表完整性与列完整性(21分11秒)

804-SQL的断言及其应用(4分50秒)

805-SQL的触发器的概念(6分34秒)

806-触发器应用示例之一(7分32秒)

807-触发器应用示例之二(5分29秒)

808-第8讲回顾本讲学习了什么-完整性回顾(1分51秒)

809-数据库安全性的概念(6分06秒)

810-自主安全性机制(10分55秒)

811-两种自主安全性控制(5分22秒)

812-SQL安全性控制(6分44秒)

813-自主安全性控制的问题(3分56秒)

814-强制安全性机制(4分51秒)

815-第8讲回顾本讲学习了什么-安全性回顾(1分56秒)

第8讲模拟练习题

第8讲测验

第9讲 嵌入式SQL语言之基本技巧

900-本讲学习什么(1分47秒)及第9讲教学课件PDF

901-什么是嵌入式SQL语言(10分20秒)

902-程序与数据库连接(6分35秒)

903-为什么需要提交和撤销(7分54秒)

904-嵌入式SQL程序的一个示例(5分50秒)

905-为什么需要游标(5分41秒)

906-游标应用示例(9分13秒)

907-可滚动游标(4分22秒)

908-利用游标进行数据库增删改(3分32秒)

909-利用游标编写的一个程序(3分42秒)

910-异常状态捕获机制(14分26秒)

911-第9讲回顾本讲学习了什么(1分53秒)

第9讲模拟练习题

第9讲测验

第10讲 嵌入式SQL语言之动态SQL

A00-本讲学习什么(1分15秒)及第10讲教学课件PDF

A01-动态SQL的概念和作用(7分37秒)

A02-动态SQL构造示例之一(15分41秒)

A03-动态SQL构造示例之二(16分17秒)

A04-动态SQL的两种执行方式(5分44秒)

A05-数据字典及其作用(14分05秒)

A06-SQLDA与数据字典的应用(5分33秒)

A07-什么是ODBC(10分21秒)

A08-什么是JDBC(9分31秒)

A09-ODBC-JDBC-嵌入式之比较(10分22秒)

A10-第10讲回顾本讲学习了什么(2分22秒)

第10讲模拟练习题

第10讲测验

参考资料

教材:《数据库原理及其应用教程(第四版)》,黄德才著,科学出版社,2018年3月,第4版

【1】《数据库原理及其应用教程——学习指导、例题分析、习题解答与标准试题库》,黄德才,许芸著,科学出版社,2015年12月

【2】《数据库系统概论》,王珊 萨师煊著,高等教育出版社,2014年9月

【3】《数据库系统概论(第5版)习题解析与实验指导》,王珊著,高等教育出版社,2018年9月

【4】《Database System Concepts》,Abraham silberschatz, Henry F. Korth, S. Sudarshan著。机械工业出版社出版,2012年5月,原书第6版

【5】Database System Implementation(数据库系统实现,有中译本), 2nd Edition, 机械工业出版社,2010.