数据库系统基础讲义第02讲-数据库系统的结构抽象与演变
- 格式:ppt
- 大小:2.33 MB
- 文档页数:40
第一篇基础篇第一章绪论1.1数据库系统概述1.1.1 四个基本概念1.1.2 数据管理技术的产生和发展1.1.3 数据库系统的特点1.2数据模型1.2.1 两大类数据模型1.2.2 数据模型的组成要素1.2.3 概念模型1.2.4 最常用的数据模型1.2.5 层次模型1.2.6 网状模型1.2.7 关系模型1.3数据库系统结构1.3.1 数据库系统模式的概念1.3.2 数据库系统的三级模式结构1.3.3 数据库的二级映像功能与数据独立性1.4数据库系统的组成1.5小结第二章关系数据库2.1关系数据结构及形式化定义2.1.1 关系2.1.2 关系模式2.1.3 关系数据库2.2关系操作2.2.1基本关系操作2.2.2 关系数据库语言的分类2.3关系的完整性2.3.1 关系的三类完整性约束2.3.2 实体完整性2.3.3 参照完整性2.3.4 用户定义的完整性2.4关系代数2.4.1传统的集合运算2.4.2专门的关系运算2.5关系演算2.6小结第三章关系数据库标准语言SQL3.1SQL概述3.1.1 SQL 的产生与发展3.1.2 SQL的特点3.1.3 SQL的基本概念3.2学生-课程数据库3.3数据定义3.3.1 模式的定义与删除3.3.2 基本表的定义、删除与修改3.3.3 索引的建立与删除3.4数据查询3.4.1 单表查询3.4.2 连接查询3.4.3 嵌套查询3.4.4 集合查询3.4.5 Select语句的一般形式3.5数据更新3.5.1 插入数据3.5.2 修改数据3.5.3 删除数据3.6视图3.6.1 定义视图3.6.2 查询视图3.6.3 更新视图3.6.4 视图的作用3.7小结第四章数据库安全性4.1计算机安全性概述4.1.1 计算机系统的三类安全性问题4.1.2 安全标准简介4.2数据库安全性控制4.2.1 用户标识与鉴别4.2.2 存取控制4.2.3 自主存取控制方法4.2.4 授权与回收4.2.5 数据库角色4.2.6 强制存取控制方法4.3视图机制4.4审计(Audit)4.5数据加密4.6统计数据库安全性4.7小结第五章数据库完整性5.1实体完整性5.1.1 实体完整性定义5.1.2 实体完整性检查和违约处理5.2参照完整性5.2.1 参照完整性定义5.2.2 参照完整性检查和违约处理5.3用户定义的完整性5.3.1 属性上的约束条件的定义5.3.2 属性上的约束条件检查和违约处理5.3.3 元组上的约束条件的定义5.3.4元组上的约束条件检查和违约处理5.4完整性约束命名子句*5.5域中的完整性限制5.6触发器5.6.1 定义触发器5.6.2 激活触发器5.6.3 删除触发器5.7小结第二篇设计与应用开发篇第六章关系数据理论6.1问题的提出6.2规范化6.2.1 函数依赖6.2.2 码6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依赖6.2.8 4NF6.2.9 规范化小结6.3数据依赖的公理系统*6.4模式的分解6.5小结第七章数据库设计7.1数据库设计概述7.1.1 数据库设计的特点7.1.2 数据库设计方法7.1.3 数据库设计的基本步骤7.1.4 数据库设计过程中的各级模式7.2需求分析7.2.1 需求分析的任务7.2.2 需求分析的方法7.2.3 数据字典7.3概念结构设计7.3.1 概念结构7.3.2 概念结构设计的方法与步骤7.3.3 数据抽象与局部视图设计7.3.4 视图的集成7.4逻辑结构设计7.4.1 E-R图向关系模型的转换7.4.2 数据模型的优化7.4.3 设计用户子模式7.5数据库的物理设计7.5.1 数据库物理设计的内容和方法7.5.2 关系模式存取方法选择7.5.3 确定数据库的存储结构7.5.4 评价物理结构7.6数据库的实施和维护7.6.1 数据的载入和应用程序的调试7.6.2 数据库的试运行7.6.3 数据库的运行和维护7.7小结第八章数据库编程8.1 嵌入式SQL8.1.1 嵌入式SQL的处理过程8.1.2 嵌入式SQL语句与主语言之间的通信8.1.3 不使用游标的SQL语句8.1.4 使用游标的SQL语句8.1.5 动态SQL8.1.6 小结8.2 存储过程8.2.1 PL/SQL的块结构8.2.2 变量常量的定义8.2.3 控制结构8.2.4 存储过程8.2.5 小结8.3 ODBC编程8.3.1 数据库互连概述8.3.2 ODBC工作原理概述8.3.3 ODBC API 基础8.3.4 ODBC的工作流程8.3.5 小结第三篇系统篇第九章关系查询处理和查询优化9.1 关系数据库系统的查询处理9.1.1 查询处理步骤9.1.2 实现查询操作的算法示例9.2 关系数据库系统的查询优化9.2.1 查询优化概述9.2.2 一个实例9.3 代数优化9.3.1 关系代数表达式等价变换规则9.3.2 查询树的启发式优化9.4 物理优化9.4.1 基于启发式规则的存取路径选择优化9.4.2 基于代价的优化9.5 小结第十章数据库恢复技术10.1 事务的基本概念10.2 数据库恢复概述10.3 故障的种类10.4 恢复的实现技术10.4.1 数据转储10.4.2 登记日志文件10.5 恢复策略10.5.1 事务故障的恢复10.5.2 系统故障的恢复10.5.3 介质故障的恢复10.6 具有检查点的恢复技术10.7 数据库镜像10.8 小结第十一章并发控制11.1 并发控制概述11.2 封锁11.3 活锁和死锁11.3.1 活锁11.3.2 死锁11.4 并发调度的可串行性11.4.1 可串行化调度11.4.2 冲突可串行化调度11.5 两段锁协议11.6 封锁的粒度11.6.1 多粒度封锁11.6.2 意向锁11.7 小结*第十二章数据库管理系统第四篇新技术篇第十三章数据库技术新发展*第十四章分布式数据库系统第十五章对象关系数据库系统第十六章XML数据库第十七章数据仓库与联机分析处理技术。
数据库系统概论(基础篇)教学大纲数据库系统已经成为现代信息系统的核心和基础设施。
数据库技术作为数据管理的最有效的手段,极大地促进了计算机应用的发展。
学习“数据库系统概论”可以帮助你更好地使用数据库,设计适合你需要的数据库应用系统,并进一步科学地管理好数据库系统。
课程概述“数据库系统概论”是计算机科学与技术专业、软件工程专业、信息系统与信息管理等专业重要的专业基础课程。
本课程将系统讲述数据库系统的基础理论、基本技术和基本方法。
本课程的知识内容和技术方法,对从事现代数据管理技术的应用、开发和研究的人员都是重要而必备的基础。
本课程内容丰富全面,分为基础篇和高级篇(2020年9月14日开课)2部分讲解,作为2门课程考核和计分。
此外,本课程还开设了新技术篇(2020年9月28日开课),从数据管理和数据分析的角度讨论数据库新技术与大数据技术。
通过数据库系统概论(基础篇)的学习,学员可以系统地掌握数据库系统的基本原理,能熟练使用SQL语言在某一个数据库管理系统上进行数据库检索和操作,掌握数据库安全性和完整性的基本概念和基本方法。
并能够在某一个数据库管理系统上进行实验。
通过数据库系统概论(高级篇)的学习,学员可以系统地掌握数据库规范化理论和数据库设计的方法与步骤,具有设计和开发数据库应用系统的基本能力;掌握数据库事务处理、并发控制与恢复的基本技术、初步掌握数据库查询处理和优化的概念。
并能够在某一个数据库管理系统上进行实验验证。
通过数据库系统概论(新技术篇)的学习,学员可以系统地掌握传统数据库技术的最新发展,大数据管理与系统的新概念、新技术和新应用。
本课程的特点是,理论联系实际。
我们不仅希望学员通过阅读和书面习题掌握本课程的内容,还要求学员完成实验项目。
为此我们针对课程知识点设置了相应的实验,锻炼学员实际动手能力,启发学员对理论知识的思考和理解,达到理论联系实际的教学效果。
课程大纲第一讲:初识数据库系统引言数据库的4个基本概念数据技术的产生,数据系统的特点第一讲课件第二讲:数据库系统的核心:数据模型概念模型,数据模型的组成要素层次模型,网状模型关系模型第二讲课件第三讲:数据库系统的结构数据库系统的结构第三讲课件第四讲:数据库系统的组成数据库系统的组成第四讲课件单元测验1第五讲:关系数据结构及关系的完整性关系数据结构关系的完整性第五讲课件第六讲:关系代数--传统集合操作关系代数1--传统集合操作第六讲课件第七讲:关系代数--关系特有操作关系代数2--关系特有操作第七讲课件第八讲:关系代数--综合训练关系代数3--综合训练第八讲课件第九讲:关系演算--元组关系演算关系演算1--元组关系演算第九讲课件第十讲:关系演算--域关系演算语言QBE 关系演算2--域关系演算语言QBE第十讲课件单元测验2第十一讲:SQL概述与数据定义SQL概述数据定义第十一讲课件第十二讲:数据查询--单表查询数据查询--单表查询数据查询--单表查询2第十二讲课件第十三讲:数据查询--连接查询数据查询--连接查询第十三讲课件第十四讲:数据查询--嵌套查询数据查询--嵌套查询数据查询--嵌套查询2第十四讲课件第十五讲:数据查询--集合查询数据查询--集合查询第十五讲课件第十六讲:数据的更新与空值的处理数据更新空值的处理第十六讲课件第十七讲:视图视图视图2第十七讲课件第十八讲:数据库安全性概述数据库安全性概述第十八讲课件第十九讲:数据库安全性控制数据库安全性控制--身份鉴别、存取控制、自主存取控制、授权数据库安全性控制--数据库角色及强制存取控制第十九讲课件第二十讲:视图机制视图、审计、数据加密及其他安全性保护第二十讲课件单元测验3第二十一讲:数据库的完整性数据库完整性概述及实体完整性参照完整性用户定义的完整性第二十一讲课件第二十二讲:约束命名子句及断言完整性约束命名子句及断言第二十二讲课件第二十三讲:触发器触发器第二十三讲课件单元测验4预备知识1. 某一种计算机程序设计方法和语言2. 数据结构3. 离散数学4. 操作系统参考资料1. 王珊,萨师煊. 《数据库系统概论(第5版)》,高等教育出版社,2014.92. 王珊,张俊.《数据库系统概论(第5版)习题解析与实验指导》,高等教育出版社,2015.7。
数据库系统理论讲解(doc 32页)数据库系统概论本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。
本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。
重点介绍关系数据库的有关知识。
1.1 数据管理技术发展史随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。
数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。
所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。
数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。
数据管理则是指对数据的组织、编码、分类、存储、检索作带来许多困难。
并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。
存在着大量重复数据,信息资源浪费严重。
【2】文件管理阶段这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。
这样就使得程序和数据之间具有了一定的相互独立性。
但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。
Research Center on I ntelligent C omputing for E nterprises & S ervices,H arbin I nstitute of T echnology数据库系统之一--基础知识与关系模型战德臣哈尔滨工业大学教授.博士生导师黑龙江省教学名师教育部大学计算机课程教学指导委员会委员第2讲数据库系统的结构抽象与演变Research Center on I ntelligent C omputing for E nterprises & S ervices,H arbin I nstitute of T echnology战德臣哈尔滨工业大学教授.博士生导师黑龙江省教学名师教育部大学计算机课程教学指导委员会委员本讲学习什么?战德臣教授基本内容1. 数据库系统的标准结构?2. 数据模型?3. 数据库系统的演变与发展?重点与难点●一组概念的区分:三级模式两层映像,物理独立性和逻辑独立性●一组概念的区分:数据→模式→数据模型●几种数据模型的差异:网状/层次模型→关系模型→OO数据模型数据库系统的标准结构Research Center on I ntelligent C omputing for E nterprises & S ervices,H arbin I nstitute of T echnology战德臣哈尔滨工业大学教授.博士生导师黑龙江省教学名师教育部大学计算机课程教学指导委员会委员(1)数据库系统的分层抽象?战德臣教授怎样抽象一个数据库系统?战德臣教授DatabaseManagement System收发管理学生注册成绩登记图书登记图书借阅图书采购数据库Database借阅证课程登记收发人员图书采购员图书借阅员读者管理员学籍管理员应用程序(DBAP)典型数据库系统的结构抽象(1)数据库系统的分层抽象?战德臣教授External Level = User Level某一用户能够看到与处理的数据, 全局数据中的某一部分Conceptual Level = Logic level从全局角度理解/管理的数据, 含相应的关联约束Internal Level = Physical level存储在介质上的数据,含存储路径、存储方式、索引方式等Internal Level DataConceptual Level Data External Level Data DBMS管理数据的三个层次(1)数据库系统的分层抽象?战德臣教授•模式(Schema)对数据库中数据所进行的一种结构性的描述所观察到数据的结构信息•视图(View)/数据(Data)某一种表现形式下表现出来的数据库中的数据学生登记表( 学号char(8), 姓名char(10), 性别Char(2), 出生年月datetime, 入学日期Datetime, 家庭住址Char(40) )展现的数据----视图数据的结构----模式数据与数据的结构--模式(2)数据(视图)与模式?战德臣教授External Schema ----(External) View 某一用户能够看到与处理的数据的结构描述(Conceptual) Schema ----Conceptual View从全局角度理解/管理的数据的结构描述, 含相应的关联约束体现在数据之间的内在本质联系Internal Schema ----Internal View存储在介质上的数据的结构描述,含存储路径、存储方式、索引方式等Internal ViewConceptualView (External) ViewInternal Schema(Conceptual) Schema External Schema 三级模式(三级视图)(3)三级模式两层映像?战德臣教授Internal ViewConceptual View (External) View Internal Schema(Conceptual) Schema External Schema E-C Mapping:External Schema-Conceptual Schema Mapping----将外模式映射为概念模式,从而支持实现数据概念视图向外部视图的转换----便于用户观察和使用C-I Mapping:Conceptual Schema-Internal Schema Mapping----将概念模式映射为内模式,从而支持实现数据概念视图向内部视图的转换----便于计算机进行存储和处理C-I MappingE-C Mapping两层映像(3)三级模式两层映像?(4)数据库系统的标准结构?战德臣教授(5)两个独立性?战德臣教授为什么要按照标准结构进行数据库系统的抽象?战德臣教授逻辑数据独立性当概念模式变化时,可以不改变外部模式(只需改变E-C Mapping),从而无需改变应用程序物理数据独立性当内部模式变化时,可以不改变概念模式(只需改变C-I Mapping) ,从而不改变外部模式(5)两个独立性?数据模型Research Center on I ntelligentC omputing for E nterprises & S ervices,H arbin I nstitute of T echnology战德臣哈尔滨工业大学教授.博士生导师黑龙江省教学名师教育部大学计算机课程教学指导委员会委员(1)数据模型的概念?战德臣教授数据模型vs.模式vs.数据?战德臣教授•数据模型•规定模式统一描述方式的模型,包括:数据结构、操作和约束•数据模型是对模式本身结构的抽象,模式是对数据本身结构形式的抽象比如:•关系模型:所有模式都可为抽象表(Table)的形式[数据结构],而每一个具体的模式都是拥有不同列名的具体的表。