数据库系统概论期末复习总结

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

数据库系统概论复习总结ByJoshua_Guo第一章绪论1.1数据库系统概述【三代演变:层次/网状数据库系统、关系数据库系统、新一代数据库系统】1.1.1数据库的四个基本概念·数据:数据库中储存的基本对象定义:描述事物的符号记录种类:数字、文字、图形、图像、音频、视频等数字的含义称为语义,与之密不可分:如93是数据,可表示为成绩,体重等数据是有结构的,记录是计算机存储数据的一种格式或方法·数据库:长期存储在计算机内,有组织可共享的数据集合基本特征:1.数据按一定是数据模型组织、描述和储存2.可为各个用户共享,冗余度较小,易扩展3.数据独立性较高·数据库管理系统:位于应用和操作系统间的一层数据管理软件是基础软件,是一个大型复杂的软件系统用途:科学的组织和存储数据,高效的获取和维护数据主要功能:1.数据定义功能2.数据的组织、存储和管理3.数据操纵功能4.数据库的事务管理和运行管理5.数据库的建立和维护功能·数据库系统:计算机系统引入数据库后的系统构成【不引起混淆前提简称数据库】主要构成:·数据库·数据库管理系统(及其应用开发工具)·应用程序·数据库管理员1.1.2数据管理技术的产生和发展·数据管理:对数据进行分类、组织、编码、存储、检索和维护数据处理和数据分析的中心问题1.1.3数据库系统的特点·文件系统:程序员必须关注记录结构和不同文件中记录的联系,工作量大编程复杂,开发速度慢·数据库系统:不用关注记录的存储和不同表之间的联系,不用编程,开发速度快·数据结构化:整体结构化,数据之间有联系数据记录可以变长,最小存取单位是数据项·数据的共享性高,冗余度低且易扩充:可以被多个用户应用共享使用·数据独立性高·数据由数据库管理系统统一管理和控制:1)数据的安全性保护2)数据的完整性检查3)并发控制4)数据库恢复1.2数据模型【数据模型是对现实世界数据特征的抽象,是数据库系统的核心和基础。】1.2.1两类数据模型·概念模型:按用户的观点对数据和信息建模,用于数据库设计·逻辑模型和物理模型:逻辑模型包括网状模型、层次模型、关系模型等物理模型是对数据最底层的抽象1.2.2概念模型·用途:1.用于信息世界的建模2.现实世界到机器世界的中间层次3.数据库设计的有力工具4.数据库设计人员和用户之间交流的语言·基本要求:1.较强的语义表达能力2.简单、清晰、易于用户理解·表示方法:1.实体-联系方法(E-R图)1.2.3数据模型的组成要素·数据模型是严格定义的一组概念的集合·组成:1.数据结构——描述系统的静态特性·用数据结构类型命名数据模型:层次结构-层次模型、网状结构-网状模型2.数据操作——描述系统的动态特性·对数据库中各种对象的实例允许执行的操作的集合·类型:查询、更新(包括插入、删除、修改)3.完整性约束·数据及其联系的制约和依存规则·保证数据的正确、有效和相容1.2.4常用的数据模型·格式化模型:层次模型、网状模型·关系模型1.2.5层次模型·用树形结构来表示各类实体以及实体间的联系·定义:1.有且只有一个结点没有双亲结点,称为根节点2.根以外的节点有且只有一个双亲结点·优点:1.简单清晰2.查询效率高,性能优于关系模型,不低于网状3.提供良好的完整性支持·缺点:1.多对多联系表示不自然2.插入和删除的限制多,编写复杂3.查询子女节点必须经过双亲结点1.2.6网状模型·用网状结构来表示各类实体以及实体间的联系·定义:1.允许一个以上的节点无双亲【没有根的限制】2.一个节点可以有多于一个的双亲·间接表示多对多联系,将多对多分解成一对多联系·优点:1.更直接的描述世界,如一个节点可以有多个双亲2.具有良好的性能,存取效率较高·缺点:1.结构比较复杂,不利于最终用户掌握2.语言发展,用户不容易使用3.应用程序须选择存取路径,加重程序员负担。1.2.7关系模型·数据库管理系统几乎都支持关系模型·关系:一个关系对应通常说的一张表·元祖:表中的一行即为一个元祖·属性:表中的一列即为一个属性,给每个属性取名即为属性名·主码:表中的某个属性组,它可以唯一确定一个元祖·域:是一组具有相同数据类型的值的集合属性的取值范围来自某个域:如性别的域是(男,女)·分量:元祖中的一个属性值·关系模式:对关系的描述关系名(属性1,属性2,...,属性n)学生(学号,姓名,年龄,性别,系名,年级)·存取路径对用户隐蔽,用户只需要指出找什么,不需要说明怎么找提高了独立性,提高了用户的生产率·优点:1.建立在严格的数学概念基础上2.概念单一,全部都用关系表示3.用户不用关心存取路径·缺点:1.由于存取路径对用户隐蔽,查询效率不如格式化模型3.为提高性能,必须对用户查询请求优化,增加了开发难度1.3数据库系统的结构【从数据库应用开发人员角度:数据库系统采用三级模式结构,是其内部系统结构】【从数据库最终用户角度:1.单用户结构2.主从式结构3.分布式结构4.客户-服务器5.浏览器-应用服务器/数据库服务器】1.3.1数据库系统模式的概念·模式:1.是对数据库逻辑结构和特征的描述(数据库某一时刻状态——模式的一个具体值)2.是型的描述,不涉及具体值(同一个模式可以有很多实例)3.模式的相对稳定的(实例随数据库中数据更新而变动)【每年这个数据库系统模式对应的实例是不一样的】1.3.2数据库系统的三级模式结构·模式(也称逻辑模式):1.数据库中全体数据逻辑结构和特征的描述2.所有用户的公共数据视图·模式是数据库系统模式结构的中心·一般某个应用的数据库有一个模式·外模式(也称子模式或用户模式):1.数据库用户使用的局部数据的~~~2.数据库用户的数据视图,是与某一应用有关的数据的逻辑表示·外模式是模式的子集,一个模式可以有多个外模式·对模式的某一数据,不同外模式中的结构等可不同·每个用户只看见和访问外模式的数据,简化视图·保护数据库安全性的有力措施·内模式(也称存储模式):1.是数据物理结构和存储方式的描述2.是数据在数据库内部的表示方式(记录的存储方式,索引的组织方式,数据是否压缩、加密等等)·一个数据库只有一个内模式1.3.3数据库系统的二级映像功能与数据独立性【三个抽象层次的联系和转换】·外模式/模式映像:对于每一个外模式,有一个外模式/模式映像·定义外模式与模式的对应关系【包含在各外模式描述中】·保证数据的逻辑独立性【模式改变时,映像改变外模式不变,应用程序依据外模式编写,应用程序不必修改】·模式/内模式映像:定义了数据全局逻辑结构与存储结构之间的对应关系【包含在模式描述中】·模式/内模式映像是唯一的·保证数据的物理独立性【存储结构改变时,修改映像使模式保持不变,模式不变则应用程序不变】·保证了应用程序的稳定性:除非应用需求变化,否则应用程序一般不变·以数据为中心:具有了数据和程序间的独立性,使数据的定义和描述可以从应用程序分离出去·数据的存取由数据库管理系统管理1.4数据库系统的组成【数据库、数据库管理系统(及其开发工具)、应用程序、数据库管理员】1.硬件平台及数据库:1.足够大的内存2.足够大的磁盘等外部设备3.较高的通道能力,提高数据传送率2.软件:1.数据库管理系统2.支持数据库管理系统运行的操作系统3.与数据库接口的高级语言及编译系统4.以数据库管理系统为核心的应用开发工具5.为特定应用环境开发的数据库应用系统3.人员:1.数据库管理员2.系统分析员和数据库设计人员3.应用程序员4.最终用户【不同的人员涉及不同的数据抽象级别,具有不同的数据视图】第二章关系数据库2.1关系数据结构【单一数据结构——关系】·笛卡儿积:给定一组域D1,D2,...,Dn,允许其中的某些域是相同的。D1,D2,...,Dn的笛卡尔积为:D1xD2x...xDn={(d1,d2,...,dn)|di∈Di,i=1,2,...,n}·所有域的所有取值的任意组合·笛卡儿积可以看作是关系的“域”·Di为域,即数据可以选择的范围,相乘即为一共可取的数目,则为基数·笛卡儿积可表示为二维表,每行对应一个元祖,每列对应一个域2.1.1关系·关系:D1xD2x...xDn的子集叫做在域D1,D2,..,Dn上的关系,表示为:R(D1,D2,...,Dn)·R:关系名·n:关系的目或度(Degree)·元祖:关系中的每个元素(d1,d2,...,dn)叫做一个n元祖,或简称元祖,通常用t表示·属性:·关系中不用列可以对应相同的域·为了加以区分,必须对每列起一个名字,称为属性·n目关系必有n个属性·码:·候选码:若关系中某一属性组的值能唯一的标识一个元祖,则称该属性组为候选码,简单情况下候选码只包含一种属性·全码:极端情况下,关系模式的所有属性组都是这个关系模式的候选码,称为全码·主码:若一个关系有多个候选码,则选定一个为主码·主属性:候选码的诸属性称为诸属性,不包含在任何候选码中的属性称为非主属性或非码属性·n=1时称该关系为单元关系或一元关系,n=2时称为二元关系【以上情况是不允许的,分量不能再分】【笛卡儿积没有实际意义,笛卡儿积的某个子集才有实际含义】2.1.2关系模式·什么是关系模式:关系模式是对关系的描述·可形式化表示为R(U,D,DOM,F)·R:关系名·U:组成该关系的属性名集合·D:U中属性所来自的域·DOM:属性向域的映像集合·F:属性间数据依赖关系的集合·关系模式与关系的“关系”:·关系模式:对关系的描述,静态的稳定的·关系:关系模式在某一时刻的状态内容,动态的不断变化PS:每年学生的数据是不同的,但都是姓名年龄等组成2.1.3关系数据库·在给定的应用领域中,所有关系的集合构成一个关系数据库·关系数据库的型和值:·关系数据库的型:关系数据库模式,是对关系数据库的描述·关系数据库的值:关系数据库某一时刻对应的关系的集合,通常称为关系数据库2.2关系的完整性约束·关系的三类完整性约束:·实体完整性和参照完整性:关系模型必须满足的完整性约束条件,称为关系的两个不变性,应该由关系系统自动支持·用户定义的完整性:应用领域需要遵循的约束条件,体现了具体领域中的语义约束2.2.1实体完整性·关系的主属性不能取空值·空值就是“不知道”或“不存在”或“无意义”的值如:选修(学号,课程号,成绩)“学号、课程号”为主码,则“学号”和“课程号”两个属性不能取空值2.2.2参照完整性·关系间的引用:在关系模型中实体与实体间的联系都是用关系来描述的,自然存在着关系与关系间的引用·外码:设F是基本关系R的一个或一组属性,但不是关系R的码。如果F与基本关系S的主码Ks相对应,则称F是R的外码·基本关系R称为参照关系·基本关系S称为被参照关系或目标关系·参照完整性规则:若属性(属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R上的每个元祖在F上的值必须为空值(F的每个属性值均为空值),或者等于S中某个元祖的主码值2.2.3用户定义的完整性·针对某一具体应用,反映某一具体应用所涉及数据必须满足的语义要求·关系模型应提供定义和检验这类完整性机制,以便统一的系统的方法处理他们,而不需要应用程序承担这一功能如:课程(课程号,课程名,学分)·“课程号”属性必须取唯一值·非主属性“课程名”也不能取空值·“学分”属性只能取值{1,2,3,4}2.3关系代数【关系代数是一种抽象的查询语言,它用对关系的运算来表达查询】·运算对象是关系,运算结果亦为关系·关系代数的运算符有两类:集合运算符和专门的关系运算符2.3.1传统的集合运算2.3.2专门的关系运算第三章关系数据库语言SQL【授权等语句在第四章】·建立数据库:createdatabasexx·删除数据库:dropdatabasexx·使用某个数据库:usexx·展示所有数据库:showdatabases·建表:createtable表名(属性名类型长度完整性约束)·删表:droptable表名·删除表中某样数据:deletefrom表名where被删除数据条件·列出所有表:showtables//包括视图这类虚拟表·增加一列:altertable表名add

1 / 49
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功