




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库实用教程(第三版)第二章数据库系统结构第二章数据库系统结构
教学内容:
数据描述:
数据模型:
数据库管理系统(DBMS)各阶段中数据描述的术语,概念设计中实体间联系的描述。
数据模型,逻辑模型的形式定义,
ER模型,层次模型、网状模型、关系模型和面向对象模型的数据结构以及联系的实现方式。§1数据描述
一、信息的三个领域:从客观世界事物的特征到计算机中的表示经历了三个领域:
现实世界信息世界机器世界
现实世界:
存在于人们头脑之外的客观世界。
现实世界中的数据就是客观存在的原始数据。
举例:
信息世界:
现实世界在人们头脑中的反映。
用概念设计描述数据库的概念结构。数据描述:实体、属性、实体集、实体标识符。举例:实体具有公共性质的可相互区分的现实世界对象的集合。可以是具体的事物,也可以是抽象的概念或联系具体的事物:学生、课程、职工抽象的联系:学生选课实体集性质相同的同类实体的集合。举例:属性实体所具有的特征或性质。身高年龄性别体重……实体标识符能唯一标识实体的属性或属性集,有时也称关键码,或者简称键。外键:
机器世界:
信息世界的信息在计算机中以数据的形式来表示。
逻辑设计涉及的概念:字段、记录、文件、关键码。
物理设计描述物理存储介质中的数据:位、字节、字、块、桶、卷。举例:字段标识实体属性的命名单位,有时也称数据项,是可以命名的最小信息单位,所以又称为数据元素或初等项。字段的命名往往与属性名一样。例如学号、姓名、年龄、性别等。记录字段的有序集合用一个记录描述一个实体能完整描述一个实体的字段集例如:文件同一类记录的集合用来描述实体集举例:实体所具有的特征或性质。关键码能唯一确定文件中每个记录的字段或字段集关键码,键
二、数据联系的描述
信息世界中,实体与实体之间有联系包括:实体内部的联系;实体之间的联系。联系
联系是数据之间的关联集合,是客观存在的应用语义链。实体内部的联系:一个实体内属性之间的联系。职工实体内部的职工号和职工的部门号实体之间的联系:不同实体之间的联系。课程实体和学生实体之间的选课联系。1、二元联系:
两个不同实体集的实体间联系:
1:1联系1:n联系m:n联系
如果实体A中的每个实例在实体B中至多有一个(也可以没有)实例与之关联,反之亦然,则称实体A与实体B具有一对一联系,记作:1:1。一对一联系(1:1)一对一联系的例子假设一个部门只有一个正经理,一个人只当一个部门的经理。?是一对一的联系部门和正经理。假设一个系只有一个正主任,一个人只当一个系的主任。?是一对一的联系系和正系主任。班级与正班长?学校里面,一个班级只有一个正班长,而一个班长也只在一个班中任职。一对多的联系
如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个实例与之对应;而对实体B中的任意一个实例,在实体A中都只有一个实例与之对应,则称实体A到实体B的联系是一对多的。
记作:
1:n
有部门和职工两个实体,并且有语义:一个部门可以有多名职工,但是一个职工只在一个部门工作。
则部门和职工之间的联系是一对多的,我们把这种联系命名为工作。一对多联系的例子班级和学生?
一个班级中有若干名学生,而每个学生只在一个班级中学习。多对多的联系
如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个实例与之对应;而对实体B中的一个实例,在实体A中也有多个实例与之对应,则称实体A到实体B的联系是多对多的。记作:m:n
多对多联系的例子
有学生和课程两个实体,并且有语义:一个学生可以修多门课程,一门课程可以被多个学生修。
那么学生和课程之间的联系就是多对多的,我们把这种联系命名为选课。1、二元联系:两个不同实体集的实体间联系:
1:1联系
1:n联系
m:n联系学号和学生?班级和学生?座位和乘客?车间和工人?2、其他联系:
一元联系:
三元联系:运动员1:1零件M:N职工1:NP收银员
商品顾客NM练习:M飞机航行班次驾驶员N1§2数据模型对于模型,人们并不陌生。建筑模型飞机模型计算机中的模型是对事物、对象、过程等客观系统中感兴趣的内容的模拟和抽象表达,是理解系统的思维工具。数据模型(datamodel)也是一种模型,它是对现实世界数据特征的抽象。§2数据模型数据模型即要面向现实世界,又要面向机器世界,因此需满足三个要求:能够真实地模拟现实世界;容易被人们理解;能够方便地在计算机上实现。§2数据模型数据模型是怎么建立的?§2数据模型现实世界信息世界:概念模型机器世界:逻辑模型转换人的认识抽象
一、数据模型的概念:
表示实体类型及实体间联系的模型。
目前广泛使用的数据模型有两种:概念数据模型(实体联系模型)逻辑数据模型/结构数据模型(层次型、网状型、关系型、面向对象等模型)§2数据模型
在ER模型中有四个基本成分:
矩形框表示实体类型;
菱形框表示联系类型(实体间的联系);
椭圆形框表示实体类型和联系类型的属性;
用直线连接:实体与属性;联系与属性;实体与实体;相应的命名均记入各种框中。对于关键码的属性,在属性名下划一横线。1、概念数据模型--实体联系模型(ER模型)
独立于计算机系统的模型,用于建立信息世界的数据模型。实体的表示方式在E-R图中用矩形框表示实体,把实体名写在框内,比如学生实体可以表示为:学生属性的表示方式
用圆角矩形或椭圆框表示,框内写上属性名,并用连线连到相应实体。学生学号姓名性别*36练习实体所具有的特征或性质。身高年龄性别体重……职员联系的表示方式
实体之间的联系用菱形框表示,框内写上联系名,并用连线与有关的实体相连。联系名实体1实体2练习:一对一联系的例子 部门和正经理(假设一个部门只有一个正经理,一个人只当一个部门的经理)、系和正系主任(假设一个系只有一个正主任,一个人只当一个系的主任)都是一对一联系。管理经理部门11
有部门和职工两个实体,并且有语义:一个部门可以有多名职工,但是一个职工只在一个部门工作。则部门和职工之间的联系是一对多的,我们把这种联系命名为工作。练习:一对多联系的例子工作部门职工1n练习:多对多联系的例子
有学生和课程两个实体,并且有语义:一个学生可以修多门课程,一门课程可以被多个学生修。那么学生和课程之间的联系就是多对多的,我们把这种联系命名为选课。学生课程选课mn关联多个实体的联系顾客购买商品:每个顾客可以从多个售货员那里购买商品,并且可以购买多种商品;每个售货员可以向多名顾客销售商品,并且可以销售多种商品;每种商品可由多个售货员销售,并且可以销售给多名顾客。收银员
商品PN顾客销售M数量
三元联系:商店
商品仓库进货PNM
数量
三元联系:
建立ER模型的步骤如下:确定实体类型和联系类型,把实体类型和联系类型组合成ER图;确定实体类型和联系类型的属性,再确定实体类型的键,在属于键的属性名下划一横线。练习:1.试画出3个E-R图,要求实体型之间具有一对一,一对多和多对多各种不同的联系。2.设计E-R图,某大学选课管理中,学生可根据自己的情况选修课程,每名学生可同时选修多门课程,每门课程可由多位教师讲授,每位教师可讲授多门课程。3.假如你是数据库设计人员,为某球队设计数据库系统,该系统记录球队、队员和球迷的信息,包括以下信息:(1)对于每个球队,球队的名字、队员以及队服的颜色;(2)对于每个队员,他们的姓名;(3)对于每个球迷,他们的姓名、喜爱的球队(对于铁杆球迷来说,他们只喜爱一个球队)以及喜爱的队员。4.为银行设计一个数据库,包括顾客和账户的信息。顾客信息包括姓名、地址、电话、社会保险号。账户包括编号,类型(例如存款,支票)和金额。5.保存一个家谱,应该有一个实体:person,每个人记录的信息包括姓名和联系(父亲,母亲,孩子)。2.逻辑数据模型:面向数据库逻辑结构的模型。逻辑数据模型包含:数据结构、数据操作和数据完整性约束。数据结构是指对实体类型和实体间联系的表达和实现;数据操作是指对数据库的检索和更新(包括插入、删除、修改)两类操作的实现;数据完整性约束给出数据及其联系应具有的制约和依赖规则。
逻辑数据模型主要有:层次模型网状模型(网络模型)关系模型面向对象模型(1)层次模型:
用树型(层次)结构表示实体类型及实体之间联系的模型称为层次模型。①定义:层次模型是以记录型为结点,记录型之间的联系是通过指针来实现的。②层次模型的特点:
只有一个根结点无父结点。每个非根结点只有一个父结点;上一层记录类型和下一层记录类型间联系是1:N联系。系记录型教研室记录型教师简介记录型开设课程记录型人事记录型工资记录型开设记录型有向树
层次模型的优点:易于实现,查询效率高。缺点:
M:N联系较难实现,
编写应用程序也复杂。举例⑵网状模型用有向图结构表示实体类型及实体间联系的模型称为网状模型。①定义:网状模型是以记录型为结点,记录型之间的联系用指针表示。②网状模型的特点:
允许有一个以上的结点无双亲;结点可以有多于一个的双亲;结点间可有两种或多种联系。教师课程学生学习有向图
网状模型的优点:容易实现M:N联系,查询效率高。缺点:程序员必须熟悉数据库的逻辑结构才能编写相应的应用程序。举例⑶关系模型
用二维表格结构来表示实体集,
外键表示实体间联系的模型称为关系模型。关系模型是由若干个关系模式组成的集合,关系模式相当于记录类型,它的每一个实例称为关系。每个关系实际上就是一张二维表格。关系模型和层次、网络模型的最大差别是用关键码而不是用指针导航数据,表格简单,用户易懂,编写程序是并不涉及存储结构、访问技术等问题。学生关系模式
S(SNO,SNAME,AGE,SEX,SDEPT)课程关系模式
C(CNO,CNAME,CDEPT,TNAME)学习关系模式
SC(SNO,CNO,GRADE)SNOSNAMEAGESEXSDEPTS1程宏19男计算机S3刘莎莎18女通讯S4李刚畸20男法学S6蒋天云19男国际贸易S9王莉21女计算机
CNOCNAMECDEPTTNAMEC2离散数学计算机汪宏伟C3高等数学通讯钱红C4数据结构计算机马良C1计算机原理计算机李兵
SNOCNOGRADES3C387S1C288S4C379S9C483S1C376S6C368S1C178S6C188S3C264S1C486S9C278关系模型的数据结构及术语⑷面向对象模型面向对象模型较完整地描述了现实世界的数据结构,能支持各类新的应用需求所满足的数据类型、能表达递归和嵌套的数据结构。
面向对象模型的基本概念是:对象、类。类Student
SNOSNAMESEXAGE类COURSE
CNOCNAMETEACHER类SCSNOCNOGRADE§3数据库管理系统(DBMS)一、DBMS的工作模式应用程序DBMSDB数据请求低层指令
数据(处理结果)
数据(查询结果)DBOSDBMS数据字典应用程序DB的系统缓冲区外模式模式内模式用户访问数据的过程
:
二、DBMS的主要功能
1.数据库的定义功能
2.数据库的操纵功能
3.数据库的保护功能
4.数据库的维护功能
数据库的恢复;
数据库的并发控制;
数据完整性控制;
数据安全性控制;DBMS的其他保护功能还有系统缓冲区的管理以及数据存储的某些自适应调节机制等。包括数据库的数据载入、转换、转储,数据库的改组以及性能监控等功能。
三、DBMS的模块组成从模块结构来观察,DBMS由两大部分组成:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冬季安全预防疾病
- 传染性疾病的预防和隔离
- 鲤鱼灯美术课件
- 营养性巨幼细胞贫血护理
- 美食海报高级排版设计要点
- 循环经济产业园规划设计
- 2025年幼儿园寒假安全教育
- 肾内科病人用药护理
- 学校住宿安全课件
- 2025年长租公寓市场运营模式创新与盈利结构分析报告
- 天津市部分区2023-2024学年八年级下学期期末练习道德与法治试卷
- 2024年年1一4季度思想汇报7篇
- 光伏发电技术项目投标书(技术标)
- 《现代库存管理:模型、算法与Python实现》 课件全套 杨超林 第1-17章 现代库存管理概述-某家电企业H的制造网络库存优化实战
- (正式版)QBT 5998-2024 宠物尿垫(裤)
- 2023年中国(教育部)留学服务中心招聘考试真题及答案
- 补习班辅导班学员合同协议书范本
- 肝性脑病小讲课
- 智慧农业的智能农机与装备
- 网络推广补充协议范本
- 焊接车间工作总结
评论
0/150
提交评论