版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章
数据库技术课件制作人:钱玉文第
五
章基本数据结构及其运算
(有*号的标题表示最基本的内容)
5.1数据库的基本概念5.1.1
数据库技术与数据库系统
5.1.2
数据库发展历史
5.1.3
数据模型*5.2
关系代数5.3关系数据语言SQL课件制作人:钱玉文教学要求了解关系数据库有关概念数据库记录、字段、类型、值域了解关系运算、关系代数选择运算、投影运算、连接运算关系的并、交、差、选择、投影等运算了解关系模型的数学定义课件制作人:钱玉文5.1.1数据库技术与数据库系统一、数据处理(DataProcessing)
数据处理是计算机应用中的一个最大的分支。最初是指在计算机上加工商业、企业的信息和数据,现在常用来泛指非科技工程方面的计算、管理和操纵任何形式的数据资料。课件制作人:钱玉文二、数据库(DataBase)概念:在计算机上合理存放的相互关联的数据的集合,被称为数据库,它具有下列特点:最小冗余(尽可能不重复)可以最优方式提供数据共享数据的独立性实现数据的统一管理数据库技术是数据处理最有效的手段数据库管理系统:对数据进行管理的软件系统。世界上第一个DBMS是美国通用电气公司于1964年开发的IDS(IntegratedDataStore),奠定了网状数据的基础。课件制作人:钱玉文三、数据库管理系统数据库管理最本质的特点是实现数据的共享。为了实现数据的共享,保证数据的独立性、完整性和安全性,需要有一组软件来管理数据库中的数据,处理用户对数据库的访问,这组软件就是数据库管理系统。
课件制作人:钱玉文数据库管理系统的功能(1)定义数据库包括:总体逻辑数据结构的定义、局部逻辑数据结构的定义、存储结构定义、保密定义等。(2)管理数据库包括:控制整个数据库系统的运行,数据存取、插入、删除、修改等操作,数据完整性和安全性控制以及并发控制等。(3)建立和维护数据库包括:数据库的建立、数据更新、数据库再组织、数据库的维护、数据库恢复以及性能监视等。(4)数据通信
具备与操作系统的联机处理、分时系统以及远程作业输入的相应接口。
课件制作人:钱玉文四、几种常用的数据库XBASE:是一种大众化的关系型数据库系统;类似产品有:DBASE、FOXBASE、FOXPRO、VFP等系列产品。Oracle:是大型关系数据库管理系统,具有兼容性、可移植性、可联接性、开放性、高生产率,支持SQL等优点。Sybase:大型“客户机/服务器数据库体系结构”的DMS具有分布式处理等优点。Informix:是唯一具有“可伸缩、高性能”体系结构的DBMS。SQLServer:是建立在WindowsNT上的RDBMS。MySQLIBMDB2。课件制作人:钱玉文5.1.2数据库技术发展历史数据库(DB)技术是管理数据的一种最新方法。它起源于上世纪60年代末。近40年来,在理论上、实现技术上都有了很大的发展。特别是在PC机上推出XBASE系统的DBS后,使数据库技术走出了实验室,从专业人员掌握的特殊工具变为普通用户手中的一般数据处理工具。现在,DB已成为MIS、OA、CAX等领域的主要工具之一。课件制作人:钱玉文数据管理的发展阶段数据管理经历了4个发展阶段:手工管理阶段文件系统阶段数据库系统阶段分布式数据库系统阶段课件制作人:钱玉文一、手工管理阶段(46-50年代中期)早期计算机数据处理应用没有专门管理数据的软件,程序自带数据,其特点是:数据独立性差,不能共享;数据冗余;无法集中式管理;主要用于科学计算。应用程序1应用程序n…...数据组1数据组n…...课件制作人:钱玉文二、文件系统阶段(50-60年代)数据以文件的形式存放于外存中,数据由文件系统FS和操作系统OS统一管理,数据通过程序方式来实现操作,其特点是:文件系统是应用程序和数据间的公共接口、统一存取;文件由用户自定义,格式和内容不统一,难于共享;数据冗余度大;文件系统本身无法解决这些问题。应用程序1应用程序n…...数据组1数据组m…...文件系统课件制作人:钱玉文三、数据库系统阶段(60年代-至今)由DBMS实现对DB的定义、管理和操作。DBMS是用户和数据间的接口,特别是网络和通信技术的发展,使异地、异机间的数据共享成为现实,其特点是:能为多用户共享;数据冗余度最小;可以交互方式或程序方式操作。问题:异地共享一处的数据,容易造成网络通信“堵塞”应用程序1应用程序n…...DBMSDB课件制作人:钱玉文四、分布式数据库系统阶段(80年代中期)分布式数据库DDBS(DistributedDBS)技术是DB技术和网络、通信技术的结晶产物。其主要特点:处理的数据分散在各个结点上,每个结点的数据由本地的DBMS管理,各结点间可以数据共享;充分利用、发挥各个结点的资源优势,减轻网络负担;DBMS1DBMSiDB1DBi
DDBMS…..课件制作人:钱玉文总结:数据库技术的发展方向数据库的发展方向:可视化多媒体面向对象的处理交叉平台开放式现代数据库还要具有:
数据仓库、数据挖掘、知识发现、决策支持的功能。课件制作人:钱玉文5.1.3数据模型数据抽象的三个领域:现实世界、观念世界和数据世界现实世界认识抽象信息世界-概念数据模型机器世界-DBMS支持的数据模型转换课件制作人:钱玉文一、现实世界现实世界:是存在于人脑之外的客观世界,事物及其相互联系就存在于这个世界中。在现实世界中所反映的是所有客观存在的事物及其相互之间的联系,它们只是处理对象最原始的表示形式。
课件制作人:钱玉文二、观念世界观念世界:又称信息世界,在观念世界中所存在的信息是现实世界的客观事物在人们头脑中的反映,并经过一定的选择、命名和分类。在观念世界中的主要对象是实体(entity)。课件制作人:钱玉文相关概念属性:是指事物在某一方面的特性,属性所取的具体值称为属性值。一个属性可能取的所有属性值的范围称为该属性的属性值域。实体:若干属性的属性值的集合。实体型:表征某一类实体的属性的集合。实体集:同一类型实体的集合。课件制作人:钱玉文三、数据世界信息经过加工、编码后即进入数据世界,可以利用计算机来处理它们,因此,数据世界中的对象是数据。现实世界中的客观事物及其联系在数据世界中是用数据模型来描述的。课件制作人:钱玉文1.相关概念数据项(字段)(field):对应于观念世界中的属性。记录(record):每一个实体所对应的数据。记录型(recordtype):对应于观念世界中的实体型。文件(file):对应于观念世界中的实体集。关键字(key):能够惟一标识一个记录的字段集。课件制作人:钱玉文2.实体间的联系客观事物相互之间存在着各种各样的联系,因此,在描述客观事物时,不仅要描述客观事物本身,还要描述它们相互之间的联系。客观事物之间的联系包括两个方面:一是实体内部的联系,它反映在数据模型中记录内部的联系;二是实体与实体之间的联系,在数据模型中表现为记录与记录之间的联系。课件制作人:钱玉文3.实体之间的联系一对一联系:实体集A中任一实体至多对应实体集B中的一个实体,则称A和B是一对一联系。例如,高考录取、电影院看电影等。一对多联系:实体集A中至少有一个实体对应于实体集B中一个以上的实体,则称这种联系是“一对多”的联系。例如,父亲对子女;院系对班级等。多对多联系:实体集A中至少有一个实体对应于实体集B中一个以上实体;反之,B中也至少有一个实体对应于A中一个以上的实体,则称A对B是多对多的联系。例如,学生对课程、工厂对产品等。课件制作人:钱玉文四、数据模型数据模型是对客观事物及其联系的数据描述,它反映了实体内部以及实体与实体之间的联系,因此,数据模型是数据库设计的核心。在数据库中,数据模型可以分为三个层次:外层、概念和内层,分别称为外模型、概念模型和内模型。外模型反映的是一种局部的逻辑结构,它与应用程序相对应,由用户自己定义。对应于一个数据库可以有多个外模型。概念模型反映的是总体的逻辑结构,对应于一个数据库只有一个概念模型,它是由数据库管理员所定义的。内模型是反映物理数据存储的模型,它也是由数据库管理员所定义的。课件制作人:钱玉文三种数据模型数据模型的好坏直接影响到DB的性能。当前较流行的设计方法有三种:关系、层次和网络方法;对应的模型为层次模型网状模型关系模型课件制作人:钱玉文1.层次模型描述层次(树形)结构的模型。特点:每个模型中只有一个称为根的最高结点其它结点都只能和一个父结点相连接(1:M)查询、访问都必须从根结点开始最有影响的层次模型DBS是上世纪60年代末,IBM公司推出的IMS(InformationManagementSystem)层次模型数据库系统。课件制作人:钱玉文层次模型示意图
校长校长办公室各学院……各职能处(电信学院)计算机系电子系信控系…..计算机教学实验中心网络所…..软件教研室课件制作人:钱玉文层次模型特点层次模型最明显的特点是层次清楚,构造简单,易于实现,它可以很方便地表示出一对一和一对多这两种实体之间的联系。但是,层次模型不能直接表示实体之间多对多的联系。如果要用层次模型来表示实体之间的多对多的联系,则必须首先将实体之间多对多的联系分解为几个一对多的联系。因此,对于复杂的数据关系,用层次模型表示是比较麻烦的,这也正是层次模型的局限性。课件制作人:钱玉文2.网状模型图结构模型,其特点:可有0个或多个结点无双亲允许结点有多个双亲允许结点间有2种以上的关系存取、访问必须按事先定义好的路径进行(从指定出发点)最有影响的网状模型是美国数据系统语言协会推出的DBTG系统,也称CODASYL(ConferenceOnDataSystemLanguage)(1969年)
课件制作人:钱玉文网状模型举例例如,教务管理系统
学生教学课程表教室课程教师课件制作人:钱玉文3.关系模型其组织形式是一张二维表,一个表即一个关系;其特点:一个关系一张表数据独立性高操作简单一行是一个记录一列是一个数据项(字段)有坚实的理论基础典型的RDBMS有:XBASE、VFP、Oracle、Sybase、DB/2、Informix、Access课件制作人:钱玉文关系模型的数学定义和关系代数关系DB是建立在关系理论和关系代数严格的数学基础之上。前面介绍了基于RDBS上的关系运算,下面对关系数据模型进行较为严格的数学定义和描述。课件制作人:钱玉文(1)关系模型的数学定义域(Domain)同类型值的集合。例如,整数集合、字母集合等。元组(Turple)设有一组域D1,D2,…,Dn,则以下集合中的每个元素(d1,d2,…,dn)称为一个元组(n元组);每个di值称为一个分量:
D1xD2x…xDn
={(d1,d2,…,dn)|di
Di,i=1,2,…,n}关系(Relation)D1xD2x…xDn
的子集称为域D1,D2,…,Dn
上的一个关系。课件制作人:钱玉文(2)笛卡尔乘积
设D1,D2,…,Dn为n个任意集合。定义D1,D2,…,Dn的笛卡尔乘积为:
D1xD2...Dn={(d1,d2,…,dn)|di
Di,i=1,2,…,n}
可读作:
笛卡尔乘积中的每一个元素(d1,d2,…,dn)叫做一个n元元组,元组中的di称为该元组的第i个分量。元组中各个分量di的位置不能任意颠倒,因为di
Di
。
课件制作人:钱玉文举例设有三个集合:NAME、AGE、SEX
NAMEAGESEXNAS=刘王2120男女NAMEAGESEX刘21男刘21女刘20男刘20女王21男王21女王20男王20女NAMEAGESEX={(d1,d2,d3)|diDi,i=1,2,3}
其中(刘,21,男)是一个元组,刘,21,男分别为3个分量.一个元组从NAS中选出与刘有关的元组,就构成一个关系。课件制作人:钱玉文(3)n元关系笛卡尔乘积D1D2...Dn的任何有限子集称为域(集合)D1,D2,…,Dn上的一个n元关系。将n元关系看成一个有n列元素的二维表,给表中的每一列起一个名字叫属性(Attribute),则n元关系有n个属性。在同一个关系中,属性名必须是唯一的。属性的取值范围Di(i=1,2,…,n)称为值域。课件制作人:钱玉文(4)关系模式一个关系的属性名表称为该关系的关系模式,其记法为:<关系名>(<属性名1>,<属性名2>,…,<属性名n>)例如关系SHOP的关系模式为:SHOP(店名,地址,经办人,电话)关系模式的集合,称为关系数据库模式注意:关系模式是型,关系是值,关系模式是静态的,关系是动态的。关系数据库模式=数据结构+关系操作+完整性约束课件制作人:钱玉文(5)完整性约束实体完整性:一个实体能与其他实体区分开来,要求关系的主属性非空。参照完整性(引用完整性)一个关系中的属性在另一个关系中也有反映,并且它们的值应该相等。用户定义完整性:用户定义的取值条件等。课件制作人:钱玉文(6)关系模型定义关系模型是在某数据处理工作中的所有关系模式及其属性名、关键字的汇集。例如,某大学采用计算机管理教学工作。涉及到三类实体:教师、课程、学生,同时教师和课程、课程和学生之间都有联系。从而确定了以下关系模式:teachers(工作证号、单位、姓名、职称)students(学号、班级、姓名)subjects(课程号、课程名称、学分)t_S(工作证号、课程号、教室)s_s(学号、课程号、成绩)课件制作人:钱玉文(7)关系数据库对应于一个关系模型的所有关系(表)的集合称为关系数据库(值)。例如,后述我们要讲到的STUDENTS、PE等就是关系数据库。课件制作人:钱玉文五、数据库管理系统中的关系模型
是数学化的模型,它把数据看作二维表中的元素,表就是其关系。其特点是:表中每一列属性都是不能再细分的基本单元不允许有重复的列不允许有相同的记录行、列次序均无关课件制作人:钱玉文关系概念的图解
学号9800019800029800039800028:9800029姓名赵学众钱习志孙雷成:李锋城甘清性别男女:男男女班级力91化81物71:汽93仪81主码整数字符串域男/女字符串属性名元组(行)属性(列)关系名表名关系分量课件制作人:钱玉文2.关系的其它概念这样的二维表被称为数据库文件表中行被称为记录(Record)或元组列称为字段(Field)或属性表的第一行是字段名的集合,被称为库结构(关系框架或库结构)列中的元素为该字段(属性)的值,且值总是限定在某个值域(domain)内课件制作人:钱玉文3.关键字(Key)候选关键字(CandidateKey)(候选码)
在给定关系中,具有唯一标识特性的一个或多个属性被称为该关系的候选关键字。例如,学生关系中的学号。主关键字(PrimaryKey)(主码)
有时候选关键字多于一个,从中选取一个作为操作的根据,称其为主关键字。
外码
假设有两个关系,第一个关系中除候选码之外的一组属性,又成为第二个关系中的候选码,则称第一个关系中的这组属性为外码。第一个关系称为参照关系,第二个关系称为被参照关系。课件制作人:钱玉文4.基本数据类型数据是程序的必要组成部分,也是程序处理的对象,数据类型体现数据结构的特点:数据间的逻辑关系(线性、非线性的)数据在计算机中的存储方式(顺序存储、链表存储)数据的运算提供的数据类型越丰富,说明这种语言的数据结构越丰富,处理功能也就越强。
课件制作人:钱玉文字段类型(10种)规则文本类型
最大长度255个字符,用于存放文本数据备注类型
最大长度65535个字符,用于存放不同于文本数据的文本信息(可以是特殊字符)。数值类型
长度可以是1、2、4、8、16个字节,分别用
来存放不同精度要求的数值数据。日期/时间
长度是8个字节,用来存放日期和时间类型
日期形式为:yy/mm/dd;时间形式为:
hh:mm:ss货币类型
8个字节,最多包含4位小数。自动编号
4个字节是/否
1位;存放“真”(True)和“假”(False)OLE对象
最大长度1GB;用于存放超级链接地址。查阅向导
4个字节,允许使用另一个表中某字段的值来定义当前字段的值。课件制作人:钱玉文5.2关系代数在介绍关系代数之前,先介绍一些有关的符号及其含义。PQP并Q与PQP或Q或aAa是集合A中的元素(a属于A)aAa不属于AAB集合A和集合B的并AB集合A和集合B的交AB集合A包含于集合B中AB集合A真包含于集合B中
课件制作人:钱玉文同类关系同一关系模式(关系框架)填以不同的值所生成的诸关系称为同类关系。在关系模型中可以进行下列运算:并、交、差运算关系的笛卡尔乘积运算选择运算投影运算自然连接运算课件制作人:钱玉文一、并运算并运算
如果R和S为同类关系,则它们的并记为R∪S,仍然是R和S的同类关系,由属于R或属于S的元组组成。记为:
R∪S={t|t∈Rt∈S}示意图为:R∪S课件制作人:钱玉文RSR∩S二、交运算交运算
同类关系R和S的交记为R∩S,由既属于R又属于S的元组组成。记为:
R∩S={t|t
Rt
S}示意图为:课件制作人:钱玉文三、差运算差运算
同类关系R和S的差记为R-S,由属于R而不属于S的元组组成;记为:
R-S={t|tRtS}示意图为:RSR-S课件制作人:钱玉文并运算举例有同类关系R和S,如下所示:名称颜色长度的确良白1000华达呢黑2000名称颜色长度的确良黑2000华达呢黑2000名称颜色长度的确良白1000的确良黑2000华达呢黑2000关系S关系R∪S关系R课件制作人:钱玉文交运算举例
关系R∩S
名称颜色长度华达呢黑2000
名称颜色长度的确良白1000华达呢黑2000名称颜色长度的确良黑2000华达呢黑2000关系S关系R课件制作人:钱玉文差运算举例
名称颜色长度的确良白1000
关系R-S名称颜色长度的确良白1000华达呢黑2000名称颜色长度的确良黑2000华达呢黑2000关系S关系R课件制作人:钱玉文四、关系的笛卡尔乘积运算设R为K1元关系,S为K2元关系,则R和S的笛卡尔乘积RS是一个(K1+K2)元元组集合,其中元组的前K1个分量来自R,后K2个分量来自S。RS是所有满足这个条件的元组的集合。例,设有关系R和S如下所示,其笛卡尔乘积为:质料颜色单价涤卡蓝16.00华达呢黑43.00毛涤褐20.00式样品种规格
男中山装中女裤子小女大衣大RS课件制作人:钱玉文笛卡尔乘积运算举例
关系RS质料颜色单价式样品种规格
涤卡蓝16.00涤卡蓝16.00涤卡蓝16.00华达呢黑43.00华达呢黑43.00华达呢黑43.00毛涤褐20.00毛涤褐20.00毛涤褐20.00男中山装中女裤子小女大衣大男中山装中女裤子小女大衣大男中山装中女裤子小女大衣大课件制作人:钱玉文笛卡尔乘积举例举例,设关系A和关系B的内容分别如下,求关系C=A×B。
关系AXYZ
x1y11x2y22关系BUVu1v11v2关系C=A×B
XYZUVx1y11u1v1x1y111v2x2y22u1v1x2y221v2课件制作人:钱玉文STUDENT12345678学号姓名班级性别操行数学英语自控原理
8612101沈小平自控86女优8576768612162陆华自控86女优9692958612104王华自控86女优9192998612106郭勇自控86男优8996968612107魏明自控86男优898582
……
……
…课件制作人:钱玉文五、选择运算概念:从指定关系中选择出符合条件的元组(记录)组成一个新的关系。举例:从STUDENTS关系中,选出三好学生候选人名单,条件是:操行为‘优’,其它三门功课的总成绩不低于270分。选择运算条件:
CP=“操行=‘优’AND数学+英语+自控原理>=270”课件制作人:钱玉文数学表示设f(t)是一逻辑函数,其自变量t为元组变量,函数值只能取逻辑值“真”(True)或“假”(False),则关系R关于函数f(t)的选择运算定义为:
f(R)={t|tRf(t)=True}例如,从关系STUDENTS中选择出三好学生候选名单。可记为:EXC_ST=f(STUDENTS)
其中f(t)为:
操评=‘优’.AND.数学+英语+自控原理>=270
课件制作人:钱玉文选择运算举例
记录的集合A、B、C、D、E、F、G、H、G、……X、Y、Z选择运算(选取小于H且跳过间隔的两个记录的那些记录)A、D、G课件制作人:钱玉文六、投影运算概念:从指定关系的属性(字段)集合中选取部分属性组成同类的一个新关系。由于属性减少而出现的重复元组被自动删除。举例:生成学生英语成绩关系ENGLISH,只包含“姓名”、“班级”、“英语”三项属性。课件制作人:钱玉文数学表示
设R为K元关系,Ai1,Ai2,…,Aim分别是R的第i1,i2,…,im个属性(i,jK,j=1,…,m),ti1,ti2,…,tim是元组的第i1,i2,…,im个属性值,则关系R在属性序列Ai1,Ai2,…,Aim上的投影是一个m元关系,其属性集合为{Ai1,Ai2,…,Aim},记为:i1,i2,…,im(R)={t|t=(ti1,ti2,…,tim)(t1,t2,…,tk)R}例如,投影生成新关系ENGLISHENGLISH=2,3,7(STUDENTS)属性值的子集
课件制作人:钱玉文英语成绩关系ENGLISH
姓名班级英语
陆华自控8692王华自控8692郭勇自控8696ENGLISH课件制作人:钱玉文投影运算举例
记录的集合:1.A1(a1、a2、a3、a4、a5、a6)2.A2(a1、a2、a3、a4、a5、a6)3.A3(a1、a2、a3、a4、a5、a6)……10.A10(a1、a2、a3、a4、a5、a6)1.A1(a1、a3、a5)2.A2(a1、a3、a5)3.A3(a1、a3、a5)……10.A10(a1、a3、a5)投影运算(选择记录中奇数的属性,组成新的记录)。课件制作人:钱玉文概念:将两个关系中的元组按指定条件进行组合,生成一个新的关系。组合的原则是从两个关系元组的广义笛卡尔乘积中选取满足条件的元组。笛卡尔乘积的含义为:
两个关系Am和Bn的笛卡尔乘积是一个元组集合Cmxn。关系C中属性个数为A和B的属性之和。在广义笛卡尔乘积的基础上加条件
七、连接运算课件制作人:钱玉文八、自然连接概念:对于两个有公共属性的关系,把其中公共属性值相同的元组挑选出来,构成一个新的关系,称之为自
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 营销活动效果数据分析及报告生成工具
- 纺织工程纺织印染厂生产管理实习报告
- 农业科学农业科技园农业技术员实习报告
- 国际贸易专业XX外贸公司业务拓展实习报告
- 公共管理政府部门行政助理实习生实习报告
- 智能制造公司技术支持实习报告
- 计算机科学与技术科技公司网络安全工程师实习报告
- 市场营销品牌策划策划实习生实习报告
- 安全隐患定期报告制度
- pcba行业分析报告
- 2026年及未来5年中国通信机柜行业发展运行现状及投资战略规划报告
- 《2026年》档案管理岗位高频面试题包含详细解答
- 生鲜客服培训
- 奶茶店垃圾制度规范
- 苏科版(2024)七年级上册数学期末考试全真模拟测试卷1(含答案)
- 门诊护理中的PDCA循环:提升患者满意度
- 绿电交易课件教学
- 2025 年本科智能采矿技术(智能采矿系统)试题及答案
- 非静脉曲张上消化道出血患者行内镜下急诊止血治疗的护理配合
- 警用盾牌使用方法
- 全电厨房安全培训内容课件
评论
0/150
提交评论