您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 人事档案/员工关系 > 何玉洁新版《数据库原理与应用》-第2章数据库系统结构.
数据库原理与应用(第2版)高等院校计算机教材系列第2章数据模型与数据库结构•2.1数据模型与数据库结构•2.2概念层数据模型•2.3组织层数据模型•2.4数据库系统的结构•2.5数据库管理系统2.1数据和数据模型•现实世界的数据是散乱无章的,散乱的数据不利于人们对其进行有效的管理和处理。•因此,必须把现实世界的数据按照一定的格式组织起来,以方便对其进行操作和使用。•在用数据库技术管理数据时,数据被按照一定的格式组织起来,比如二维表结构,以使数据能够被更高效地管理和处理。2020年1月6日10时20分32.1.1数据与信息•描述事物的符号记录称为数据。•将从数据中获得的有意义的内容称为信息•数据有一定的格式,这些格式的规定是数据的语法,而数据的含义是数据的语义。•数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。2020年1月6日10时20分4示例•数据:(张三,9912101,男,1981,计算机系,应用软件)•解释:•张三是9912101班的男生,1981年出生,计算机系应用软件专业。2020年1月6日10时20分5数据信息解释数据的静态特征•数据的基本结构•学生的学号、姓名、性别、出生日期•数据间的联系•学生选课中的学号与学生基本信息中的学号•数据取值范围约束•考试成绩在0~100分之间2020年1月6日10时20分6动态特征•指对数据可以进行的操作以及操作规则。•对数据库数据的操作主要有•查询数据•更改数据:插入、删除和更新•一般将对数据的静态特征和动态特征的描述称为数据模型三要素2020年1月6日10时20分72.1.2数据模型•对于模型,人们并不陌生。•建筑模型飞机模型•计算机中的模型是对事物、对象、过程等客观系统中感兴趣的内容的模拟和抽象表达,是理解系统的思维工具•数据模型(datamodel)也是一种模型,它是对现实世界数据特征的抽象。2020年1月6日10时20分8数据模型(续)•数据库管理系统是基于某种数据模型对数据进行组织的,因此,了解数据模型的基本概念是学习数据库知识的基础。•在数据库领域中,数据模型用于表达现实世界中的对象,即将现实世界中杂乱的信息用一种规范的、形象化的方式表达出来。2020年1月6日10时20分9数据模型(续)•数据模型即要面向现实世界,又要面向机器世界,因此需满足三个要求:•能够真实地模拟现实世界;•容易被人们理解;•能够方便地在计算机上实现。2020年1月6日10时20分10数据模型(续)•数据模型实际上是模型化数据和信息的工具。根据模型应用的不同目的,可以将模型分为两大类:•概念层数据模型(概念模型),从数据的语义视角来抽取模型,是按用户的观点来对数据和信息进行建模。•组织层数据模型(组织模型)。从数据的组织层次来描述数据。2020年1月6日10时20分11从现实世界到机器世界的过程现实世界信息世界机器世界抽象转换((((((((((((((描述2.2概念层数据模型•基本概念•概念层数据模型是指抽象现实系统中有应用价值的元素及其关联关系,•反映现实系统中有应用价值的信息结构,•不依赖于数据的组织层数据模型。2020年1月6日10时20分132.2概念层数据模型(续)•概念层数据模型用于对信息世界的建模,•是现实世界到信息世界的第一层抽象,•是数据库设计人员进行数据库设计的工具,•也是数据库设计人员和业务领域的用户之间进行交流的工具。•面向用户、面向现实世界的数据模型,•与具体的DBMS无关。•常用的概念层数据模型有实体-联系(Entity-Relationship,E-R)模型、语义对象模型。实体-联系模型•实体-联系方法使用的工具称为E-R图,它所描述的现实世界的信息结构称为企业模式(EnterpriseSchema),也把这种描述结果称为E-R模型。•在E-R模型中主要涉及三方面内容:•实体•属性•联系实体-联系模型•实体•属性•联系实体•具有公共性质的可相互区分的现实世界对象的集合。•可以是具体的事物,也可以是抽象的概念或联系•具体的事物:学生、课程、职工•抽象的联系:学生选课实体的表示方式•在E-R图中用矩形框表示实体,把实体名写在框内,比如学生实体可以表示为:学生属性•实体所具有的特征或性质。身高年龄性别体重……属性的表示方式•用圆角矩形表示,•在圆角矩形框内写上属性的名字,•并用连线将属性框与它所描述的实体联系起来。学生学号姓名年龄联系•联系是数据之间的关联集合,是客观存在的应用语义链。•实体内部的联系:一个实体内属性之间的联系。•职工实体内部的职工号和此职工的部门经理号•实体之间的联系:不同实体之间的联系。•课程实体和学生实体之间存在选课联系。联系的表示方式实体之间的联系用菱形框表示,框内写上联系名,并用连线与有关的实体相连。联系名实体1实体2联系的种类一对一联系(1:1)一对多联系(1:n)多对多联系(m:n)一对一联系(实体内部的联系)如果实体A中的每个实例在实体B中至多有一个(也可以没有)实例与之关联,反之亦然,则称实体A与实体B具有一对一联系,记作:1:1。一对一联系(1:1)一对一联系的例子部门和正经理(假设一个部门只有一个正经理,一个人只当一个部门的经理)、系和正系主任(假设一个系只有一个正主任,一个人只当一个系的主任)都是一对一联系。管理经理部门11一对多的联系如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个实例与之对应;而对实体B中的任意一个实例,在实体A中都只有一个实例与之对应,则称实体A到实体B的联系是一对多的,记为1:n。有部门和职工两个实体,并且有语义:一个部门可以有多名职工,但是一个职工只在一个部门工作。则部门和职工之间的联系是一对多的,我们把这种联系命名为工作。一对多联系的例子工作部门职工1n多对多的联系如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个实例与之对应;而对实体B中的一个实例,在实体A中也有多个实例与之对应,则称实体A到实体B的联系是多对多的,记为m:n。多对多联系的例子有学生和课程两个实体,并且有语义:一个学生可以修多门课程,一门课程可以被多个学生修。那么学生和课程之间的联系就是多对多的,我们把这种联系命名为选课。学生课程选课mn关联多个实体的联系•顾客购买商品:•每个顾客可以从多个售货员那里购买商品,并且可以购买多种商品;•每个售货员可以向多名顾客销售商品,并且可以销售多种商品;•每种商品可由多个售货员销售,并且可以销售给多名顾客。mnp顾客商品售货员销售两个图不等价2020年1月6日10时20分31mnp顾客商品售货员销售×2.3组织层数据模型•2.3.1层次数据模型•2.3.2网状数据模型•2.3.3关系数据模型层次数据模型•采用层次模型作为数据的组织方式。•典型代表是IBM公司的IMS(InformationManagementSystem)数据库管理系统,是IBM公司1968年推出的第一个大型的商用数据库管理系统。•层次模型用树形结构表示实体和实体之间的联系。•构成层次模型的树由结点和连线组成,结点表示实体,连线表示相连的两个实体间的联系,这种联系是一对多的。通常把表示“一”的实体放在上方,称为父结点;把表示“多”的实体放在下方,称为子结点。层次模型的两点限制(1)有且仅有一个结点无父结点,这个结点即为树的根;(2)其他结点有且仅有一个父结点。根结点R1R11R12R21R22R22叶结点叶结点父结点子结点层次结构示例系主任系人数系名处长办公地点处名室主任室人数教研室学校名称所在城市学校编号教师名职称教师号姓名性别学号年龄层次数据库值示例学生教研室S01王平男21计算机李明21网络赵新12S02刘力男22S03李爽女21软件工程胡杰15J01计算机教2楼学院T101王大明教授T102刘勇副教授T103钱红教授T301陈小玲教授T302张海涛副教授……层次模型对多对多关系的表示姓名性别学号年龄课程号成绩学号课程名学分课程号1:n1:m1:m课程名学分课程号课程号成绩学号姓名性别学号年龄1:n课程号成绩学号网状数据模型•用图形结构表示实体和实体之间的联系的数据模型就称为网状数据模型。•去掉了层次模型中的两点限制。•可以直接表示多对多的联系。•同样使用父结点和子结点这样的术语,并且同样一般把父结点放置在子结点的上方。•典型代表是CODASYL系统,它是CODASYL组织的标准建议的具体实现。网状结构示意图姓名性别学号年龄课程号成绩学号课程名学分课程号C-GS-G教师号授课学时课程号教师名职称教师号T-CC-C关系数据模型•把数据看成是二维表中的元素,而这个二维表就是关系•用关系(表格数据)表示实体和实体之间联系的模型称为关系数据模型•示例:学生基本信息表2.4数据库系统结构•2.4.1模式的基本概念•2.4.2三级模式结构•2.4.2模式映象与数据独立性2.4.1模式的基本概念•模式是数据库中全体数据的逻辑结构和特征的描述。•它仅仅涉及“型”的描述,不涉及具体的值。•关系模式是关系的“型”或元组的结构共性的描述,它对应的是关系表的表头。•模式的一个具体值称为模式的一个实例。•一个模式可以有多个实例。模式实例2.4.2三级模式结构外模式2外模式n外模式1概念模式内模式…(单个用户视图)(公共用户视图)(存储视图)广义上讲•内模式:最接近物理存储,包括数据存储位置、存储方式等。•外模式:最接近用户,是用户所看到的数据视图。•模式:介于内模式和外模式之间的中间层,是数据的逻辑组织方式。•关系数据库中的模式一定是关系的,在该层可见的实体是关系的表和关系的操作符。•外模式也是关系的或接近关系的,它们的内容来自模式。•内模式不是关系的,它是数据的物理存储方式。外模式•也称为用户模式、子模式。•用户对现实系统中感兴趣整体的局部数据结构的描述。•是DB整体数据结构的子集或局部重构。•用外模式定义语言表达。例,对RDB,定义视图结构。•是保证数据库安全的一个措施。示例1——子集2020年1月6日10时20分48学号姓名年龄性别所在系0611101李勇21男计算机系0611102刘晨20男计算机系0611103王敏20女计算机系0621101张立20男信息管理系0621102吴宾19女信息管理系学号姓名性别0611101李勇男0611102刘晨男0611103王敏女0621101张立男0621102吴宾女学生模式外模式学号06111010611102061110306211010621102姓名李勇刘晨王敏张立吴宾性别男男女男女示例2——重构•学生(学号,姓名,性别,年龄,所在系)•课程(课程号,课程名,学分)•选课(学号,课程号,成绩)2020年1月6日10时20分49学生(姓名,课程名,成绩)姓名课程名成绩示例3——安全性职工表(职工号,姓名,所在部门,基本工资,职务工资,奖励工资)2020年1月6日10时20分50职工信息(职工号,姓名,所在部门,基本工资,职务工资)奖励工资模式•也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据描述。•是数据库系统结构的中间层。•用模式定义语言表达。例,对关系数据库,定义:表头结构、属性取值范围、…。•模式实际上是数据库数据在逻辑级上的视图。•一个数据库只有一种模式。•不涉及存储记录对列、索引、指针或其他存储的访问细节。2020年1月6日10时20分52内模式•也称为存储模式。•数据的内部存储结构描述(数据的组织与存储)。•用内模式定义语言描述。例,对RDB,定义数据文件的位置、索引的依据等。2.4.3模式映象与数据独立性•数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。•为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在三级模式之间提供了两层映象:外模式/模式映象模式/内模式映象模式间的映象(DBMS基本功能之一)•维持DB数据与DB应用程序相互独立,从而使D
本文标题:何玉洁新版《数据库原理与应用》-第2章数据库系统结构.
链接地址:https://www.777doc.com/doc-2685460 .html