1、第1章 数据库系统概述,1.1 数据、信息和数据处理,1.1.1数据与信息 1.数据(Data)数据:描述事物的符号记录。数据的种类:字符、数字、声音、图形、图象、图表等。数据的语义:用数据描述事物,是事物的特性用数据进行表示的形式,也就是数据的语义。数据和其语义是不可分的:例如: (王红,女,19,计算机科学院) 2.信息(Information)信息:由原始数据经加工提炼而成的、用于决定行为、计划或具有一定语义的数据称为信息。 数据和信息之间的关系如同原料和成品 信息=数据+数据处理,1.1.2数据处理(Data Processing)数据处理:将数据转换成信息的过程。如:对数据的收集、组
2、织、整理、加工、存储和传播等工作。,数据管理技术的发展动力:应用需求的推动;计算机硬件的发展;计算机软件的发展.数据管理技术经历了人工管理阶段、文件系统阶段、数据库阶段。 一. 人工管理阶段 1. 时间:20世纪50年代中期以前 2.背景: 应用:科学计算硬件:磁带,卡片和纸带 软件:汇编语言,无操作系统数据处理方式:批处理,3.特点: (1) 数据不保存在计算机内(2) 没有专门的数据管理软件 (3)数据面向应用(一组数据 只对应一个程序)。 (4)只有程序的概念,没有文件的概念。,应用程序1,数据组1,应用程序2,数据组2,应用程序n,数据组n,人工管理阶段数据和程序之间的关系,一组数据对
3、应一个程序,即使两个应用程序涉及某些相同的数据,也必须各自定义,无法相互利用,互相参照。程序与程序间有大量重复数据。,二.文件系统阶段 1. 时间:20世纪50年代末到60年代中期 2.背景: 应用:科学计算,信息管理 硬件:磁盘、磁鼓等直接存取的外存设备 软件:操作系统、高级语言,操作系统中的文件系统是专门用于数据管理的软件 数据处理方式:文件批处理、联机实时处理,3. 特点: (1)数据可以长期保存在外存上。 (2)文件组织已呈现多样化(有顺序文件、索引文件、随机文件等) (4)数据不再属于某个特定的程序,可以重复使用-数据面向应用,有局限性。(5)对数据的操作以记录为单位。,缺点:(1)
4、数据冗余 (2)数据不一致 (3)数据联系弱,应用程序1,文件1,应用程序2,文件2,应用程序3,文件3,文件 系统,图1-3 文件系统阶段数据和程序之间的关系,职工工资文件,职工档案文件,职工保健文件,职工工资文件,职工档案文件,职工保健文件,(a)文件系统中的文件,(b)数据库中的文件,三、数据库系统阶段,1.数据库(DataBase,DB)DB 是长期存储在计算机内、有组织的、统一管理的相关数据的集合。其特点:它能为各种用户共享;具有最小冗余度;数据间联系密切;而又有较高的程序与数据独立性。2.数据库管理系统(DataBase Management System ,DBMS)DBMS:位
5、于用户与操作系统 之间的一层数据管理软件,为用户或 应用程序提供访问DB的方法。DBMS能够为数据库提供数据的定义、建立、维护、查询、统计等操作功能,并完成对数据完整性、安全性进行控制的功能。著名的系统:Oracle、Informix、Sybase、SQL Server、DelPhi、VFP等。DBMS总是基于某种模型的,可分为层次DBMS、网状DBMS、关系DBMS和面向对象DBMS等。,系统层次图,3.数据库系统(DataBase System,DBS),DBS: 使用数据库技术设计的计算机系统。它由计算机硬件、数据库、数据库管理系统及相关软件、数据库管理员和用户5部分构成。, ,数据库管
6、理系统,数据库,数据库管理员,用户,数据库系统结构,4、数据库技术的产生 时间:20世纪60年代末 背景: 应用:大规模数据管理;硬件:大容量的磁盘 ;软件:有数据库管理系统;数据处理方式:联机实时处理 发展历程:60年代70年代初,出现了三大事件,标志着数据管理进入数据库技术阶段(1)1968年IBM公司研制、开发了数据库管理系统的商品化软件IMS。(层次结构)(2)1969年美国数据系统语言协会CODASYL下属的数据库任务组DBTG提交了DBTG报告,报告确定了建立数据库系统的许多概念、方法和技术。它是数据库网状模型的基础和典型代表。,(3)1970年IBM公司San Jose研究实验室
7、的研究员E.F.Codd发表了题为“大型共享数据库的数据关系模型”论文,文中提出了数据库的关系模型,为关系数据库技术奠定了理论基础。数据库阶段的数据管理特点 (1).采用复杂的数据模型表示数据结构数据模型不仅描述数据本身的特点,还要描述数据之间的联系,这种联系通过存取路径实现。数据不再面向某个或多个应用,而是面向整个应用系统,因此冗余减少,实现了数据共享。,(2).系统为用户提供方便的用户接口用户数据库查询语言/终端命令/编程 (3).系统提供四个方面的数据控制功能(保证库中数据是安全的、正确的、可靠的)数据库的恢复、并发控制、数据库完整性和数据安全性 (4).数据库中数据的最小存取单位是数据
8、项(增加系统的灵活性),访问,数据库阶段数据和程序之间的关系,DBMS,应用程序1,应用程序2,数据库,1.2 数据模型,计算机不可能直接处理现实世界中的具体事物,所以人们必须事先把具体事物转换成计算机能够处理的数据。从事物的特性到计算机中的具体表示,经历了三种世界:现实世界、信息世界、机器世界(或称数据世界、计算机世界)。 一.三个领域的数据描述术语 1 .现实世界现实世界是指存在于人脑之外的客观世界,泛指客观存在的事物及其相互间的联系。现实世界通过个体、特征、总体及联系进行划分和认识。,(1)个体一个实际存在并且可以互相识别的事物称为个体。例:一个学生、一部汽车-具体的事物一门课、一个班级
9、-抽象的概念 (2)特征每个个体都有自己的特征,用以区别其他个体。例:一个学生-学号、姓名、性别、年龄等特征 (3)总体具有相同特征要求的个体称为同类个体,所有同类个体的集合称为总体。例:学生、课程、工人、汽车-总体 (4) 总体不是孤立存在的,它们之间有着各种各样的联系。例: “学生”与“课程”间-有“选课”联系,2.信息世界,现实世界中的事物反映到人们的头脑里,经过认识、选择、命名、分类等综合分析而形成了印象的概念,从而得到了信息,当事物用信息来描述时,即进入信息世界。信息世界中,数据库技术用到以下的术语。 (1)实体(Entity)信息世界中,对每一个被认识的个体称为实体。例:一个学生、
10、一部汽车:具体的事物实体 学生的一次选课、一个班级:抽象概念和联系 (2)属性(Attribute)实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。每个属性有一个值域,即类型可以是整型、实型、字符串型。例:学生甲-学号,姓名,性别,年龄(95001,张山,男,20)其值域为字符串型、字符串型、男,女、整型,实体通过其属性表示为实例。 例: 张三-一个实体 “张三,男,25岁”-实例 (3)实体集(Entity Set)具有相同属性或能用同样属性描述的实体的集合称为实体集。例:全体学生、全体工人、全体汽车-实体集。 (4)实体型( Entity Type)具有相同属性的实体必然具有
11、共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型例:学生(学号,姓名,性别,出生年份,系,入学时间) (5)键(Key)能唯一标识每个实体的属性或属性集,称为实体的键(标识符)例:学生-学号(6)联系:实体集之间的对应关系称为联系。,实体间的联系有两种:同一实体集的实体之间的联系和不同实体集的实体之间的联系 下面讨论两个不同实体集的实体之间的联系,有三种情况。 (a)一对一联系(1:1)设实体集E1和E2,若实体集E1与实体集E2之间具有一对一联系,对实体集E1中的每一个实体,在实体集E2中至多有一个(或0个)实体与之联系,反之,对于实体集E2中的每一个实体,实体集E1
12、也至多有一个实体与之联系。两实体集间的“一对一联系”,记作“1:1”。,例:一个工厂只有一个厂长,而一个厂长只能在一个工厂任职。 工厂与厂长之间1:1,(b)一对多联系(1:n)设实体集E1和E2,若实体集E1与实体集E2之间具有一对多联系,则:对实体集E1中的每一个实体,在实体集E2中有一个或多个实体与之联系,对于实体集E2中的每一个实体,实体集E1至多有一个实体与之联系。两实体集间的“一对多联系”记作“1:n”。,例1:一个学校有多名教师,而每个教师只能在一个学校任教。学校与教师之间:1:n,例: 飞机的座位和乘客之间也是1:1,(c) 多对多联系(m:n)设实体集E1和E2,若实体集E1
13、与实体集E2之间具有多对多联系,则:对实体集E1中的每一个实体,在实体集E2中有一个或多个实体与之联系,对于实体集E2中的每一个实体,实体集E1也有一个或多个实体与之联系。两实体集间的“多对多联系”记作: “ m:n”。,例:一门课程有多名教师,而每个教师可教多门课程。课程与教师之间:m:n,工厂,厂长,负责,1,1,学校,教师,工作,1,n,课程,教师,讲授,m,n,用ER 图表示三种关系 参见P130,多实体集之间的关系,两个以上的实体集之间也会存在有联系,其联系类型为:一对一、一对多、多对多。,一对多,多对多,三个实体集(三元联系),实体集内部的联系,在一个实体集的实体之间也可以存在一对
14、多或多对多的联系。(一元联系) 例:,职工实体集:职工中有领导,领导也是职工。某一名职工领导若干名职工。一个职工仅被一个领导所管理。,一对多,3.机器世界,在计算机中,所有信息只能用二进制数表示,一切信息进入计算机时,必须是数据化的。在机器世界中用到如下术语: (1)字段(Field)(又称:数据项(Item)实体属性的数据表示,有型和值之分。型是对数据特性的表示,通过数据项的名称、数据类型、数据宽度、值域来描述。值是其具体取值。,(2) 记录(Record)记录是实例的数据表示。有型和值之分。记录的型是结构,由数据项的型构成。记录的值表示集合中的一个实例,它的分量是数据项值。例: (姓名,性
15、别,年龄,所在系)-记录的型 (张三,男,23,计算机系)-记录的值-学生实体集中的一个实例“张三”,“男”,“23”,“计算机系”-数据项值 (3) 文件(File)文件是同类记录的集合。例: 职工登记表组成一个文件,关系模型的术语,关系模型中,数据的逻辑结构是张二维表,由行和列组成。关系模型中的主要术语:1)关系(Relation):一张二维表2)元组(Tuple):表中的一行称为一个元组。3)属性(Attribute) :表中的一列称为一个属性。表中有多个属性,属性名不允许相同4)主码(Primary Key):表中的某个属性或属性组,它们的值可以唯一确定一个元组且属性组中不含多余的属性
16、,这样的属性或属性组称关系的码。若关系中有多个码,选其中一个为主码。5)域(Domain):属性的取值范围。6)分量(element):元组中的一个属性值7)关系模式(Relation mode):关系的型称为关系模式。一般表示:关系名(属性1,属性2,属性3,.,属性n),关系模型要求关系必须是规范化的,即关系模式要満足一定的规范条件,其首要条件是:关系的每一个分量必须是不可分的数据项。,关系操作和关系的完整性约束条件,关系操作主要包括数据查询和插入、删除、修改数据。关系中的数据操作是集合操作。关系的完整性约束条件包括:实体完整性、参照完整性和用户定义的完整性。,关系模型的存储结构,在关系D
17、B的物理组织中,关系以文件形式存储。,例:学生关系 学生(学号,姓名,年龄,性别,所在系,年级),4.现实世界、信息世界、机器世界的关系,现实世界、信息世界、机器世界这三个领域是由客观到认识、由认识到使用管理的三个不同层次,而且后一领域是前一领域的抽象描述。 (1)三个世界的术语对应表,个体 特征 总体 事物及其联系,实体 属性 实体集 概念数据模型 实体标识符,记录 字段(数据项) 文件 逻辑数据模型 关键码,现实世界,信息世界,机器世界,(2)三个世界的联系和转换关系,现实世界事 物及其联系,认识抽象,信息化,信息 世界 数据 模型,转化,数据化,计算机 世界数据 模型,数据库的概念设计阶段,数据库的逻辑设计阶段,