- 000-数据库系统课程简要介绍
- 100-本讲学习什么
- 101-为什么要学习数据库系统
- 102-什么是数据库
- 103-什么是数据库系统
- 104-从用户角度看数据库管理系统
- 105-从系统角度看数据库管理系统
- 106-数据库系统课程学习什么
- 107-第1讲回顾
- 200-本讲学习什么
- 201-数据库系统的标准结构
- 202-什么是数据模型
- 203-数据库系统的演变之一
- 204-数据库系统的演变之二
- 205-第2讲回顾
- 300-本讲学习什么
- 301-什么是关系模型
- 302-什么是关系
- 303-关系有什么特性
- 304-候选码和外码
- 305-关系模型的完整性
- 306-第3讲回顾
- 400-本讲学习什么
- 401-什么是关系代数
- 402-并相容性的概念
- 403-并操作
- 404-差操作
- 405-广义积操作
- 406-选择操作
- 407-投影操作及基本操作小结
- 408-交操作
- 409-Theta连接操作及更名操作
- 410-自然连接操作
- 411-应用关系代数操作训练
- 412-除操作
- 413-外连接操作
- 414-回顾本讲学习了什么
- 500-本讲学习什么
- 501-什么是关系元组演算
- 502-简单运用元组演算公式
- 503-存在量词与全称量词
- 504-等价变换
- 505-四各典型示例
- 506-用元组演算实现关系代数操作
- 507-什么是域演算
- 508-什么是按示例查询-QBE
- 509-QBE应用训练
- 510-关系演算的安全性
- 511-三种关系运算之比较
- 512-第5讲回顾
- 600-本讲学习什么
- 601-SQL语言概述
- 602-利用SQL建立数据库
- 603-利用SQL进行基本查询
- 604-利用SQL进行多表联合查询
- 605-结合Select的Insert语句
- 606-结合Select的Delete与Update语句
- 607-数据库定义的修正与撤销
- 608-用SQL Server进行联系
- 609-第6讲回顾
- 700-本讲学习什么
- 701-IN子查询
- 702-TheataSome子查询
- 703-Exists子查询
- 704-结果计算和聚集计算
- 705-分组聚集计算与分组过滤
- 706-用SQL表达并交差操作
- 707-用SQL处理空值
- 708-用SQL表达连接与外连接操作
- 709-SQL Select小结
- 710-SQL视图
- 711-第7讲回顾
- 800-本讲学习什么
- 801-数据库完整性概念及完整性约束规则
- 802-数据库完整性分类
- 803-SQL表完整性与列完整性
- 804-SQL的断言及其应用
- 805-SQL的触发器的概念
- 806-触发器应用示例之一
- 807-触发器应用示例之二
- 808-第8讲回顾 数据库完整性讲了什么
- 809-数据库安全性的概念
- 811-两种自主安全性控制
- 812-SQL安全性控制
- 813-自主安全性控制的问题
- 814-强制安全性机制
- 815-第8讲回顾
- 900-本讲学习什么
- 901-什么是嵌入式SQL语言
- 902-程序与数据库连接
- 903-为什么需要提交和撤销
- 904-嵌入式SQL程序的一个示例
- 905-为什么需要游标
- 906-游标应用示例
- 907-可滚动游标
- 908-利用游标进行数据库的增删改
- 909-利用游标编写一个程序
- 910-异常状态捕获机制
- 911-第9讲回顾
- 1000-本讲学习什么
- 1001-动态SQL的概念和作用
- 1002-动态SQL构造示例之一
- 1003-动态SQL构造示例之二
- 1004-动态SQL的两种执行方式
- 1005-数据字典及其作用
- 1006-SQLDA与数据字典的应用
- 1007-什么是ODBC
- 1008-什么是JDBC
- 1009-ODBC-JDBC-嵌入式之比较
- 1010-第10讲回顾
- 1100-本讲学习什么
- 1101-为什么要数据建模与数据库设计
- 1102-数据模型与概念模型的概念
- 1103-关于抽象的八个字
- 1104-什么是E-R模型
- 1105-实体与实例
- 1106-联系与联系的元数
- 1107-联系与联系的基数
- 1108-Chen方法表达E-R模型
- 1109-Chen方法建模案例-物资管理系统
- 1110-Crow`s Foot方法表达E-R模型
- 1111-Crow`s Foot方法建模案例-物资管理系统
- 1112-型与值和三个世界
- 1113-数据模型与两种抽象层次
- 1114-再看抽象层次
- 1115-第11讲回顾
- 1200-本讲学习什么
- 1201-什么是IDEF1X
- 1202-独立实体和从属实体
- 1203-标定联系和非标定联系
- 1204-非确定联系与相交实体
- 1205-分类联系与分类实体
- 1206-IDEF1X案例讲解之一-四个建模
- 1207-IDEF1X案例讲解之二-仓储系统建立
- 1208-IDEF1X案例讲解之三-物料系统建立
- 1209-IDEF1X案例讲解之四-六个模型示例
- 1210-IDEF1X-案例讲解之五-联赛管理系统
- 1211-第12讲回顾
- 1300-本讲学习什么
- 1301-如何做需求分析
- 1302-如何做概念数据库设计
- 1303-如何做逻辑数据库设计
- 1304-逻辑数据库设计会出现什么问题
- 1305-如何做物理数据库设计
- 1306-第13讲回顾
- 1400-本讲学习什么
- 1401-什么是函数依赖
- 1402-部分函数依赖与完全函数依赖
- 1403-传递函数依赖
- 1404-函数依赖相关的几个重要概念
- 1405-关于函数依赖的Armstrong公理
- 1406-什么是属性(集)闭包
- 1407-属性闭包的计算算法与覆盖及其证明
- 1408-什么是最小覆盖
- 1409-第14讲回顾
- 1500-本讲学习什么
- 1501-什么是第一范式
- 1502-什么是第二范式
- 1503-什么是第3范式
- 1504-什么是BC范式
- 1505-什么是多值依赖
- 1506(选修)-关于多值依赖的Armstrong公理
- 1507-第15讲回顾
- 1600-本讲学习什么
- 1601-模式分解存在的问题
- 1602-无损连接分解及其检验算法
- 1603-保持依赖分解及其检验算法
- 1604-模式分解成BCNF及第3范式的算法
- 1605-连接依赖与第5范式
- 1606-数据库设计需要知道的
- 1607-第16讲回顾
- 1700-《数据库系统(下)》课程简要介绍
- 1701-本讲学习什么
- 1702-存储体系回顾
- 1703-磁盘的结构与特性
- 1704-查询实现的基本思想
- 1705-记录与表在磁盘上的存储
- 1706-四种文件组织方法
- 1707-Oracle数据库物理存储简介
- 1708-第17讲回顾
- 1800-本讲学习什么
- 1801-索引的概念和作用
- 1802-SQL中索引的创建与使用
- 1803-稀疏索引与稠密索引
- 1804-主索引与辅助索引
- 1805-聚簇索引与倒排索引
- 1806-B+数索引 1
- 1806-B+树索引 2
- 1806-B+树索引 3
- 1807-B+树键值插入与删除-结点分裂与合并 1
- 1807-B+树键值插入与删除-结点分裂与合并 2
- 1807-B+树键值插入与删除-结点分裂与合并 3
- 1808-散列索引
- 1809(选修)-可扩展散列索引 1
- 1809(选修)-线性散列索引 2
- 1810-第18讲回顾
- 1900-本讲学习什么
- 1901-查询实现算法概述
- 1902-由连接运算看查询实现的逻辑与物理不同 1
- 1902-由连接运算看查询实现的逻辑与物理不同 2
- 1903-迭代器的概念与应用 1
- 1903-迭代器的概念与应用 2
- 1903-迭代器的概念与应用 3
- 1904-查询实现的一趟扫描算法 1
- 1904-查询实现的一趟扫描算法 2
- 1905-基于索引的选择与连接算法 1
- 1905-基于索引的选择与连接算法 2
- 1906-第19讲回顾
- 2000-本讲学习什么
- 2001-两趟扫描算法的基本思想
- 2002-两阶段多路归并排序算法 1
- 2002-两阶段多路归并排序算法 2
- 2003-基于排序的两趟扫描算法
- 2004-基于散列的两趟扫描算法 1
- 2004-基于散列的两趟扫描算法 2
- 2100-本讲学习什么
- 2101-什么是查询优化
- 2102-查询优化的总体思路
- 2103-逻辑层查询优化策略
- 2104-关系代数操作等价变换定理 1
- 2104-关系代数操作等价变换定理 2
- 2105-基于关系代数的查询优化算法
- 2106-物理层查询优化
- 2107-代价估算 1
- 2107-代价估算 2
- 2108-第21讲回顾
- 2200-本讲学习什么
- 2201-为什么要进行并发控制
- 2202-深入认识事务 1
- 2202-深入认识事务 2
- 2203-事务调度与可串行行 3
- 2203-事务调度与可串行性 1
- 2203-事务调度与可串行性 2
- 2204-基于锁的并发控制 1
- 2204-基于锁的并发控制 2
- 2204-基于锁的并发控制 3
- 2205-基于时间戳的并发控制 1
- 2205-基于时间戳的并发控制 2
- 2206-基于有效性确认的并发控制
- 2207-第22讲回顾
- 2300-本讲学习什么
- 2301-数据库故障类型
- 2302-数据库故障恢复的宏观思路
- 2303-运行日志的概念
- 2304-Undo型日志及其故障恢复
- 2305-Redo型日志及其故障恢复
- 2306-Undo Redo结合型日志及其故障恢复
- 2307-第23讲回顾
本课程是我校计算机科学与技术专业的一门专业基础必修课。课程目的是使学生系统地掌握数据库系统的基本原理,概念,模型,结构,方法,能够从事复杂应用系统的设计,开发,研究和应用工作,并为从事计算机各领域的科研技术工作打下基础。课程任务是阐述数据模型与语言、数据库建模与设计方法、数据库系统实现基本原理以及大数据技术。
第一章 绪论
教学目标:熟悉数据库、数据库管理系统、数据库系统等术语;了解数据库系统和数据库管理系统结构;了解大数据的概念,以及数据管理技术发展趋势。
教学内容:
1.1 数据库
1.2 数据库管理系统
1.3 数据库系统
1.4 数据管理技术发展趋势
第二章 关系模型
教学目标:熟悉关系模型、元组、字段、属性等术语;掌握超键、候选键、主键、外键、约束等概念;了解数据库上的典型操作(运算)。
教学内容:
2.1 关系结构和约束
2.2 基本关系代数运算
2.3 附加关系代数运算
2.4 扩展关系代数运算
第三章 数据定义与操作
教学目标:会用数据库语言编写程序创建、修改数据库表;会用数据库语言编写程序实现数据库中数据的增、删、改;会用数据库语言编写程序实现对单个数据表中数据的各种查询;会用数据库语言编写程序实现多个数据表中数据的各种关联查询;会用数据库语言编写嵌套查询语句方便地实现单个或多个数据表中数据的各种查询;熟练掌握数据库语言及其用法。
教学内容:
3.1 SQL概述
3.2 数据定义与修改
3.3 简单查询
3.4 联接查询
3.5 嵌套查询
第四章 在应用环境中
教学目标:熟悉数据库实际应用系统的技术架构;掌握高级语言连接访问数据库的原理和方法;会使用C、C++、Java或其它高级语言访问数据库;掌握高级语言和html混合编程的原理和方法;会编写数据库函数。
教学内容:
4.1 数据库应用体系结构
4.2 嵌入式pgSQL
4.3 JDBC编程
4.4 PG中的函数
第五章 数据保护
教学目标:理解数据安全保护的概念和含义;掌握保障数据保密性、完整性、和可用性的各种方法;会针对特定应用设计相应的保护机制。
教学内容:
5.1 数据保护
5.2 视图
5.3 访问控制
5.4 完整性约束
5.5 触发器
5.6 事务
5.7 加密
第六章 模式设计:实体-联系方法
教学目标:了解数据库生命周期;熟悉概念模型和E-R图中的要素;会针对特定应用需求设计E-R图;会把E-R图转换为关系,并确定其中的约束;了解大数据思维对概念模型设计的影响。
教学内容:
6.1 模式设计方法和生命周期
6.2.1 E-R模型元素
6.2.2 基本E-R图设计
6.3 基本E-R图转换为关系模式
6.4 扩展E-R图及其转换
6.5 大数据E-R图及其转换
第七章 模式设计:属性-联系方法
教学目标:理解函数依赖的概念,会依据实际语义确定函数依赖;理解模式分解的性质;掌握范式的概念,会判定一个关系模式的范式级别;掌握规范化的方法;了解高/低范式各自的优劣,理解大数据思维对关系范式的新认识。
教学内容:
7.1 函数依赖
7.2 模式分解
7.3 范式
7.4 规范化
7.5 大数据与反规范化
第八章 存储和存取
教学目标:理解数据在磁盘上的组织方式,包括元组存储方式、磁盘块内元组组织、和数据文件组织以及索引技术。
教学内容:
8.1 存储器件
8.2 磁盘
8.3 DBMS文件管理
8.4 数据库文件组织
8.5 文件中元组组织
8.6 索引
8.7 数据字典的存储