1、1-,1,第一章 绪论,1.1数据库应用例子 1.2数据、数据库、数据库系统、数据库管理系统1.3数据库技术的产生与发展 1.4数据库系统结构1.5数据和数据联系的描述1.6概念模型及其描述,1-,2,1.1数据库应用例子 (例1),例1. Mary Richards 房屋粉刷 Mary Richards是一个专业的房屋粉刷匠,她自己拥有并管理一家小公司。该公司包括她自己和另一个专业粉刷匠,在需要的时候,还雇佣一些兼职的粉刷匠。Mary的业务已经进行了10年,她收费合理(既不便宜,也不昂贵),并赢得了高质量的粉刷匠的美誉。Mary的业务大部分来自请她粉刷房屋的客户的重复业务,而且总是从他们那里
2、得到口头参照意见。另外,Mary也有一部分业务来自建筑承包商和专业的室内设计公司。,1-,3,1.1数据库应用例子 (例1),例1. Mary Richards 房屋粉刷 规模、人员:1人,10年业务数据管理需求:客户的重复业务口头参照意见其它一部分业务来自建筑承包商和专业的室内设计公司。,1-,4,1.1数据库应用例子 (例1),Mary需求:1)帮助她记注并更好地跟踪她的业务记录 ;2)希望知道客户、业务以及客户参照之间的联系,如她为某一用户做了什么业务,或者某人参照了哪些用户的粉刷。 系统需求:储存关于客户、业务、出处的记录工作分两部分:1)数据组织2)数据应用,1-,1.1数据库应用例
3、子 (例1),表英文名: CUSTOMER 中文名称:客户信息,1-,6,1.1数据库应用例子 (例1),表英文名: JOB 中文名称:作业,1-,7,1.1数据库应用例子 (例1),表英文名: SOURCE 中文名称:参照表,1-,8,1.1数据库应用例子 (例1),图查找客户表格,1-,9,1.1数据库应用例子,1-,10,1.1数据库应用例子 (例2),例2SeaView 游艇销售我们来考虑SeaView游艇销售的情况。SeaView销售中型到大型帆船,它有两个股东、四个销售人员和一个办公室管理员,SeaView有它自己的用以停放其待售船只的海边空地,它的销售人员还与来自其它代理商的人合
4、作销售不属于自己存货清单的船只。SeaView有一个用来跟踪其用户、客户的购买兴趣、待售船只及其它销售人员感兴趣的数据的数据库,数据放在局域网的服务器上,由办公室的全体人员共享。,1-,11,1.1数据库应用例子 (例2),例2SeaView 游艇销售规模:两个股东、四个销售人员和一个办公室管理员数据库管理:跟踪其用户、客户的购买兴趣、待售船只及其它销售人员感兴趣的数据数据放在局域网的服务器上,由办公室的全体人员共享。多人同时上机?,1-,12,1-,13,1.1数据库应用例子 (例3),例3州执照颁发和汽车登记局(1)现在来看一个更大的数据库应用,这个例子是有关州执照颁发和汽车登记局的,它有
5、52个进行驾驶员考试、颁发与更新驾驶员执照的中心,还有37个销售汽车牌照的办公室。这些办公人员通过访问数据库来进行他们的工作。在办理和更新驾驶员执照前,通过数据库中这些驾驶员的记录查询他们交通违章、事故或被逮捕的情况,这些数据用来决定驾驶执照是否可以更新,若可以更新,是否应该有所限制。,1-,14,1.1数据库应用例子 (例3),类似地,汽车登记部门的工作人员访问数据库确定某辆汽车以前是否登记过,若登记过,是登记给谁的,有否重大问题不能进行这次登记。该数据库有数百个用户,不仅包括执照颁发和汽车登记的工作人员,还包括州税务部门和执法部门的工作人员,无怪乎该数据库庞大而且复杂,拥有40多个不同的表
6、,其中的某些表包括数十万行数据。,1-,15,1.1数据库应用例子 (例3),例3州执照颁发和汽车登记局规模:52个进行驾驶员考试、颁发与更新驾驶员执照的中心,还有37个销售汽车牌照的办公室。数据库管理:查询驾驶员交通违章、事故或被逮捕的情况,决定驾驶执照是否可以更新 查询汽车登记记录数据库用户分布在广域网上,1-,16,1.1数据库应用例子 (例4),例4.Calvert岛预定中心Calvert岛要在网上发布旅游信息介绍具体需求:1)宣传岛上特色和娱乐机会;2)保存Web站点访问者姓名和地址;3)保存游客需求,将其传递给相应商家。 Web站点系统设置两个数据库:宣传资料库(两类用户:一是只读
7、浏览,一是维护)处理顾客和预定数据库,1-,17,1.1数据库应用例子 (例4),该例数据库特点(区别于前三个例子):包含结构数据及包含多媒体数据应用内容通过标准浏览器传递给用户通过HTTP、DHTML、XML这样的Internet标准传输数据。,1-,18,1.1数据库应用例子,不同类型数据库的特点,数据库应用规模的比较,1-,19,1.1数据库应用例子,数据库应用例子总结:数据库数据库管理系统DBMS数据库应用系统,1-,20,应用程序和DBMS之间的关系,1-,21,1.1数据库应用例子,本课学习目标能设计小型数据库应用系统(例1、2、4)站在设计者、应用者角度考虑设计实现数据库应用中的
8、数据查询本课学习内容数据库管理系统原理、使用方法数据库设计与实现数据库应用系统的设计与实现,1-,22,第一章 绪论,1.1数据库应用例子 1.2数据、数据库、数据库系统、数据库管理系统1.3数据库技术的产生与发展 1.4数据库系统结构1.5数据和数据联系的描述1.6概念模型及其描述,1-,23,1.2 数据、数据库、数据库系统、数据库管理系统,1.数据(data):用符号记录下来的可以加以鉴别的信息 2.数据库(DB) :通用化的相关数据集合,它不仅包括数据本身,而且包括关于数据之间的关系。3.数据库管理系统(DBMS):为数据库的建立、使用和维护而配置的软件。4.数据库应用系统:利用数据库
9、管理数据的信息管理系统,1-,24,5. 数据库系统(DBS):计算机系统中引入数据库后的系统构成。,1-,25,第一章 绪论,1.1数据库应用例子 1.2数据、数据库、数据库系统、数据库管理系统1.3数据库技术的产生与发展 1.4数据库系统结构1.5数据和数据联系的描述1.6概念模型及其描述,1-,26,1.3数据库技术的产生与发展,什么是数据管理对数据进行分类、组织、编码、存储、检索和维护,是数据处理的中心问题数据管理技术的发展动力应用需求的推动计算机硬件的发展计算机软件的发展,1.3数据库技术的产生与发展,数据管理目标:数据独立性:数据本身与应用之间独立应用包括:逻辑及物理两方面数据共享
10、多用户多应用,1-,27,1-,28,1.3.3数据库系统阶段,数据独立性物理独立性指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序不用改变。逻辑独立性指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,用户程序也可以不变。,1-,29,1.3.3数据库系统阶段,数据的高共享性的好处降低数据的冗余度,节省存储空间避免数据间的不一致性使系统易于扩充,1-,30,1.3数据库技术的产生与发展,数据管理技术的发展过程人工管理阶段(40年代中-50年代中)文件系统阶段(50年代末-60年代中)数据库系统阶段(60年代末-现在),1-,31,1
11、.3数据库技术的产生与发展,1.3.1人工管理阶段 1.3.2文件系统阶段 1.3.3数据库系统阶段 1.3.4数据库技术的研究领域,1-,32,1.3.1人工管理阶段,时期40年代中-50年代中产生的背景应用需求科学计算硬件水平无直接存取存储设备软件水平没有操作系统处理方式人工管理,1-,33,1.3.1人工管理阶段,特点数据的管理者:应用程序,数据不保存。数据面向的对象:某一应用程序 数据的结构化:无结构数据控制能力:应用程序自己控制数据管理效果无共享、冗余度极大不独立,完全依赖于程序,1-,34,1.3.1人工管理阶段,1-,35,1.3数据库技术的产生与发展,1.3.1人工管理阶段 1
12、.3.2文件系统阶段 1.3.3数据库系统阶段 1.3.4数据库技术的研究领域,1-,36,1.3.2文件系统阶段,时期50年代末-60年代中产生的背景应用需求科学计算、管理硬件水平磁盘、磁鼓软件水平有文件系统处理方式联机实时处理、批处理,1-,37,1.3.2文件系统阶段,特点数据的管理者:文件系统,数据可长期保存数据面向的对象:某一应用程序 数据的结构化:记录内有结构,整体无结构数据控制能力:应用程序自己控制效果数据有物理独立性,OS按名存取数据逻辑独立性差,数据的逻辑结构改变必须修改应用程序数据的共享程度:共享性差、冗余度大,1-,38,1.3.2文件系统阶段,1-,39,1.3数据库技
13、术的产生与发展,1.3.1人工管理阶段 1.3.2文件系统阶段 1.3.3数据库系统阶段 1.3.4数据库技术的研究领域,1-,40,1.3.3数据库系统阶段,时期60年代末以来产生的背景应用背景大规模管理硬件背景大容量磁盘软件背景有数据库管理系统处理方式联机实时处理,分布处理,批处理,1-,41,1.3.3数据库系统阶段,特点数据的管理者:DBMS数据面向的对象:现实世界数据的结构化:整体结构化数据控制能力:由DBMS统一管理和控制效果数据的共享程度:共享性高数据的独立性:高度的物理独立性一定的逻辑独立性,1-,42,1.3.3数据库系统阶段,整体数据的结构化是数据库的主要特征之一。数据库中
14、实现的是数据的真正结构化数据的结构用数据模型描述,无需程序定义和解释。数据可以变长。数据的最小存取单位是数据项。,1-,43,1.3.3 数据库系统阶段,图. 数据库管理系统在计算机系统中的位置,1-,44,数据管理三个阶段的比较,1-,45,数据管理三个阶段的比较,1-,46,数据管理三个阶段的比较,1-,47,1.3数据库技术的产生与发展,1.3.1人工管理阶段 1.3.2文件系统阶段 1.3.3数据库系统阶段 1.3.4数据库技术的研究领域,1-,48,1.3.4 数据库技术的研究领域,数据库管理系统软件的研制如新数据类型,新功能数据库设计在DBMS支持下,开发具体应用数据库理论规范化理
15、论,关系数据理论等 本课讲授后两项内容。,1-,49,第一章 绪论,1.1数据库应用例子 1.2数据、数据库、数据库系统、数据库管理系统1.3数据库技术的产生与发展 1.4数据库系统结构1.5数据和数据联系的描述1.6概念模型及其描述,1-,50,1.4数据库系统结构,1.4.1 数据库系统的模式结构 1.4.2 数据库系统的体系结构1.4.3 DBMS功能与组成 1.4.4 数据库管理系统的工作过程,1-,51,1.4.1数据库系统的模式结构,数据库系统(内部)的模式结构 从数据库管理系统角度看数据库系统采用三级模式结构数据库系统(外部)的体系结构从数据库最终用户角度看数据库系统的结构分:单
16、用户结构主从式结构分布式结构客户/服务器结构,1-,52,1.4.1数据库系统的模式结构,1-,53,1.4.1.1数据库系统的三级模式结构,模式(也称逻辑模式)数据库中全体数据的逻辑结构和特征的描述所有用户的公共数据视图,综合了所有用户的需求一个数据库只有一个模式模式的地位:是数据库系统模式结构的中间层与数据的物理存储细节和硬件环境无关与具体的应用程序、开发工具及高级程序设计语言无关,1-,54,1.4.1.1数据库系统的三级模式结构,外模式(用户模式、子模式:用户数据的逻辑结构):是数据库用户(包括应用程序员和最终用户)看到和使用的局部数据的逻辑结构和特征的描述用户看到的数据视图,与某一应
17、用有关的数据的逻辑表示局部数据视图外模式是保证数据库安全性的有力措施,1-,55,1.4.1.1数据库系统的三级模式结构,外模式的地位:介于模式与应用之间模式与外模式的关系:一对多一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求外模式与应用的关系:一对多同一外模式也可以为某一用户的多个应用系统所使用,1-,56,1.4.1.1数据库系统的三级模式结构,内模式(也称存储模式)是数据物理结构和存储方式的描述是数据在数据库内部的表示方式记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规
18、定一个数据库只有一个内模式,1.4.1.1数据库系统的三级模式结构,1-,57,1.4.1.1数据库系统的三级模式结构,数据模式给出了数据库中数据框架结构,以模式为框架所组成的数据库叫概念数据库以外模式为框架所组成的数据库叫用户数据库以内模式为框架所组成的数据库叫物理数据库只有物理数据库是真实存放在计算机外存中,其他两种数据库并不真正存在,而是通过两种映像由物理数据库得来,1-,58,1-,59,1.4.1.2数据库的二级映象与数据独立性,三级模式对数据进行三个抽象级别,组织方式留给DBMS,使用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式二层映象 : 外模式/模
19、式(逻辑独立性)模式/内模式(物理独立性)保证了数据有较高的逻辑独立性和物理独立性,1-,60,1.4.1.2数据库的二级映象与数据独立性,外模式模式映象定义外模式与模式之间的对应关系每一个外模式都对应一个外模式模式映象,1-,61,1.4.1.2数据库的二级映象与数据独立性,外模式模式映象的用途使数据具有较高的逻辑独立性当模式改变时,系统修改有关的外模式模式映象,使外模式保持不变应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。,1-,62,1.4.1.2数据库的二级映象与数据独立性,模式内模式映象定义了数据全局逻辑结构与存储结构之间
20、的对应关系例如,说明逻辑记录和字段在内部是如何表示的数据库中模式内模式映象是唯一的,1-,63,1.4.1.2数据库的二级映象与数据独立性,模式内模式映象的用途保证数据的物理独立性当数据库的存储结构改变了(例如选用了另一种存储结构),系统修改模式内模式映象,使模式保持不变应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。,1-,64,1.4.1.2数据库的二级映象与数据独立性,逻辑独立性:系统提供总体逻辑结构与局部的映射,当数据整体改变时,局部逻辑结构不变,使程序也不需要修改。物理独立性:当数据的存储结构改变时,由系统完成物理结构与逻辑结构间的转换,保持数据结构不变, 使程
21、序不须改变.,1-,65,1.4.1.2数据库的二级映象与数据独立性,1-,66,1.4数据库系统结构,1.4.1数据库系统的模式结构 1.4.2数据库系统的体系结构1.4.3 DBMS功能与组成 1.4.4数据库管理系统的工作过程,1-,67,1.4.2 数据库系统的体系结构,单用户结构主从式结构分布式结构客户/服务器结构,1.4.2 数据库系统的体系结构,1.单用户数据库系统:早期,一台机器,用户独占,不能多机共享整个数据库系统都装在一台计算机上,由一个用户完成数据不能共享,数据冗余度大,1-,68,1-,69,1.4.2 数据库系统的体系结构,2.主从式结构的数据库系统:硬件支持:一个主
22、机带多个终端的多用户结构DBMS:现在所有C/S数据库都支持简单主从式发展:现在网上访问数据库是一种主页式主从方式工作方式:应用程序,DBMS ,数据都集中存放在主机上所有的处理任务由主机完成多个用户可同时并发地存取数据,能够共享数据优点:安全性高,一致性好,数据易于管理与维护缺点:终端增加,主机任务过重-成为瓶颈或主机故障,整个系统不能用,1-,70,1.4.2 数据库系统的体系结构,主从式结构的数据库系统,1-,71,1.4.2 数据库系统的体系结构,主机,终端,1-,72,1.4.2 数据库系统的体系结构,3.分布式结构的数据库管理系统 工作方式:数据逻辑上是一个整体,物理上分布在网上不
23、同不同结点上每个结点上的主机又连接多个用户网络中的每一个结点都可以独立地处理数据,执行全局应用硬件支持:多台网上机器软件技术支持:动态复制,同义词定义发展:网络发展必然产物,1-,73,1.4.2 数据库系统的体系结构,分布式结构的数据库管理系统,1-,74,1.4.2 数据库系统的体系结构,4.客户/服务器结构的DBMS 原理:数据处理任务按功能划分为两部分:数据的组织、定义功能数据的应用功能方式:数据库服务器执行DBMS;客户机执行应用功能,1-,75,1.4.2 数据库系统的体系结构,将数据库处理任务分给两个系统:客户端运行数据库应用 ,负责屏幕和用户输入输出_前端(应用)数据库服务器运
24、行全部或部分的实际DBMS,负责数据处理和磁盘访问_后端(数据处理),1-,76,1.4.2 数据库系统的体系结构,1-,77,1.4.2 数据库系统的体系结构,C/S系统的体系结构:由客户机、服务器和中间件三大部分构成服务器:提供数据服务客户机:完成应用界面和交互功能中间件:C/S应用关键。泛指客户机和服务器之间的软件,也称C/S的接口软件。(中间件的一种说法),1-,78,1.4.2 数据库系统的体系结构,客户/服务器优点: 1.DBMS速度不受工作站速度影响(因为大量DB操作在后端)2.减少网络负载3.工作站无关性:用户不再被局限在一种类型的系统或平台上4.数据完整性的维护:中央管理 缺
25、点:1.增加了维护人员开销(前,后端)2.增加了硬件开销:大容量内存和硬盘(至少10-12MB内,300M硬)3.客户/服务器DB软件全部费用比传统的基于PC的DBMS高,1-,79,1.4数据库系统结构,1.4.1数据库系统的模式结构 1.4.2数据库系统的体系结构1.4.3 DBMS功能与组成 1.4.4数据库管理系统的工作过程,1-,80,1.4.3 DBMS功能与组成,1. 数据定义包括定义模式,外模式,内模式及其间映射,有关约束条件例如:定义完整性规则,用户口令,存取权限等2. 数据操纵包括对数据检索,插入,修改,删除等,1-,81,1.4.3 DBMS功能与组成,3. 数据库运行管
26、理 是DBMS运行核心部分,包括: 并发控制 安全性检查 完整约束条件检查 内部维护(索引,数据字典)4.数据组织、存储和管理 分类组织,存储,利用空间 , 提高查找效率,1-,82,1.4.3 DBMS功能与组成,5. 数据库建立和维护包括建立,输入数据,转储,重构,性能监测分析6. 数据通信接口 与其他软件系统进行通信,如提供与其它DBMS或文件系统的接口,从而能将数据转换为另一DBMS接受格式.,1-,83,1.4.3 DBMS功能与组成,DBMS由下四部分组成 : *数据定义语言及其翻译处理程序 *数据操纵语言及其编译处理程序 *数据库运行控制程序 *实用程序,1-,84,数据库系统的
27、组成,数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户组成。,1-,85,数据库系统的组成,一、硬件平台及数据库数据库系统对硬件要求:1.足够大的内存2.足够大的磁盘、磁带,1-,86,数据库系统的组成,二、软件1.DBMS2.支持DBMS运行的操作系统3.与数据库系统接口的高级语言及其编译系统4.应用开发工具5.为特定应用环境开发的数据库应用系统,1-,87,数据库系统的组成,三、人员1.数据库管理员2.系统分析员和数据库设计人员3.应用程序员4.用户,1-,88,1-,89,1.4数据库系统结构,1.4.1数据库系统的模式结构 1.4.2数据库系统的体系
28、结构1.4.3 DBMS功能与组成 1.4.4数据库管理系统的工作过程,1-,90,1.4.4数据库管理系统的工作过程,1-,91,1.4.4数据库管理系统的工作过程,1用户在应用程序中向DBMS发出读取数据的请求.同时给出记录名及要读取的记录关键字值.2DBMS对该命令进行语法检查,语义检查,并调用应用程序A对应的子模式,检查A的存取权限,决定是否执行该命令,如拒绝,则向用户返回错误.,利用A所用外模式分析该请求3 DBMS调用模式,进一步分析,将外模式与模式之间变换的定义,决定应读入哪些模式记录.4 DBMS通过内模式,将数据的逻辑记录转换为实际的物理记录,位置.,1-,92,1.4.4数
29、据库管理系统的工作过程,5 DBMS向OS发出读物理记录请求6 OS向物理存储设备读操作7 OS读出记录从磁盘送入系统缓冲区8 DBMS根据模式和子模式规定,将记录转换为用户所需形式9 DBMS把数据从系统缓冲区传到A程序工作区.10 DBMS向用户程序A发出本次请求执行情况信息.,1-,93,第一章 绪论,1.1数据库应用例子 1.2数据、数据库、数据库系统、数据库管理系统1.3数据库技术的产生与发展 1.4数据库系统结构1.5数据和数据联系的描述1.6概念模型及其描述,1-,94,1.5 数据和数据联系的描述,1.5.1 数据模型1.5.2 三个世界,1-,95,1.5.1 数据模型,模型
30、:是现实世界特征的模拟和抽象数据模型:是一种模型,它是现实世界数据特征的抽象数据库中用数据模型来抽象、表示和处理现实世界中的数据和信息现有数据库系统均是基于某种数据模型的。,1-,96,1.5.1 数据模型,数据模型应满足三方面要求:比较真实地模拟现实世界容易为人理解便于在计算机上实现数据库系统中针对不同的使用对象和应用目的,采用不同的数据模型不同的数据模型实际上提供给我们模型化数据和信息的不同工具,1-,97,1.5.1 数据模型,根据模型应用的不同目的,模型划分为两类,分属于两个不同层次:概念模型(信息模型):按用户的观点来对数据和信息建模,主要用于数据库设计数据模型:按计算机系统的观点对
31、数据建模,主要用于DBMS的实现,包括网状模型、层次模型、关系模型等数据模型是数据库系统的核心和基础,1-,98,1.5.1 数据模型,数据模型的组成要素数据模型是严格定义的一组概念的集合。这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件数据结构:系统静态特性的描述数据操作:系统动态特性的描述数据的约束条件:具体应用所涉及的数据必须遵守的特定的语义约束条件,1-,99,1.5.1 数据模型,数据结构:对象类型的集合,两类对象与数据类型、内容、性质有关的对象与数据之间联系有关的对象数据操作:对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则,数据操作的类型检索更新(包
32、括插入、删除、修改)数据的约束条件:一组完整性规则的集合,1-,100,1.5.1 数据模型,最常用的数据模型层次模型网状模型关系模型面向对象模型,1-,101,1.5 数据和数据联系的描述,1.5.1 数据模型1.5.2 三个世界,1-,102,1.5.2 三个世界,1.现实世界人们管理的对象存在于现实世界中,并彼此存在着联系,1-,103,1.5.2 三个世界,2.概念世界(信息模型) :是现实世界在人们头脑中的反映,是对客观事物及其联系的一种抽象描述。概念世界注重语义,与具体DBMS无关按用户观点来对数据和信息建模注意:实体的关键字一定要在此处确定(依据语义确定),不能借助DBMS的字段
33、作为key,1-,104,1.5.2 三个世界,3.机器世界:将数据及关系抽象成便于计算机处理的方式(数据模型)各种机器上实现的DBMS软件都是基于某种数据模型的,1-,105,第一章 绪论,1.1数据库应用例子 1.2数据、数据库、数据库系统、数据库管理系统1.3数据库技术的产生与发展 1.4数据库系统结构1.5数据和数据联系的描述1.6概念模型及其描述,1-,106,1.6概念模型及其描述,1.6.1 概念模型的基本概念1.6.2 概念模型的表示方法,1-,107,1.6.1 概念模型的基本概念,概念模型的用途概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象是现实世界到机器世界
34、的一个中间层次是数据库设计的有力工具数据库设计人员和用户之间进行交流的语言概念模型独立于具体的DBMS所支持的数据模型,1-,108,1.6.1 概念模型的基本概念,对概念模型的基本要求较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识简单、清晰、易于用户理解。,1-,109,1.6.1 概念模型的基本概念,概念模型涉及的基本概念(1) 实体(Entity) 客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。(2) 属性(Attribute) 实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。 (3) 实体唯一标识符(码(Key)/关键字)唯一标识实
35、体的属性集称为码。,1-,110,1.6.1 概念模型的基本概念,4)域(domain)属性的取值范围称为该属性的域5)实体型(entity type):具有相同属性的实体必然具有共同的特征和性质。用实体名集合来抽象和刻画同类实体,称为实体型。如 学生(学号,姓名,性别)为一个实体型,1-,111,1.6.1 概念模型的基本概念,6)实体集(entity set)同型实体的集合称为实体集。如:全体学生7)联系(Relationship)现实世界中的事物间的关联称为联系。这些联系反映为实体内部的联系和实体之间的联系实体内部联系通常是指组成实体的各属性之间的联系实体间的联系指不同实体之间的联系。,
36、1.6.1 概念模型的基本概念,两个实体集之间的联系可以分为以下几种包括:一对一联系(1 :1)一对多联系(1 :n)或多对一联系(n :1)多对多联系(m :n),1-,112,1-,113,1.6.1 概念模型的基本概念,一对一联系(1:1):如果对于实体集A中的每一个实体,实体集B中至少有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1如:班级与班长,1-,114,1.6.1 概念模型的基本概念,一对多联系(1:n):如果对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则
37、称实体集A与实体集B具有一对多联系。记为1:n如:班级与学生,1-,115,1.6.1 概念模型的基本概念,多对多联系(m:n):如果对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m=0)与之联系,则称实体集A与实体集B具有多对多联系。记为m:n如:课程与学生概念模型的基本概念可以归纳为实体、联系和属性。由三者结合起来才能表示现实世界。,1-,116,1.6概念模型及其描述,1.6.1 概念模型的基本概念1.6.2 概念模型的表示方法,1-,117,1.6.2 概念模型的表示方法,常用的表示方法有:实体联系模型语义
38、对象模型,1-,118,1.6.2.1实体-联系方法(E-R),1976年提出的,在CASE厂商和其它应用领域有大量的支持者。 E-R模型用来解释、指定数据库处理系统的需求并使之文档化,由于它为显示用户需求的全局结构提供了框架,所以它对自顶向下数据库设计特别有用. E-R 模型用E-R图描述概念世界,是建立概念模型的实用工具。,1-,119,1.6.2.1实体-联系方法(E-R),E-R 图有三要素: 实体(型):矩形框表示,框内为实体名称属性 :椭圆形表示,并用连线与实体连接起来实体之间的联系: 菱形表示,框内注明联系名称,并用连线连起,且注明联系类型,1-,120,1.6.1 概念模型的基
39、本概念,1-,121,1.6.2.1实体-联系方法(E-R),(a)两个实体型间的1:1的联系,(b)两个实体型间的1:n 联系,(c)两个实体型间的m:n关系,图.实体型之间及实体型的联系,1-,122,1.6.2.1实体-联系方法(E-R),(d)三个实体型间的1:n联系,(e) 同一实体间的1:n联系,图. 实体型之间及实体型的联系,1-,123,1.6.2.1实体-联系方法(E-R),假设上面的5个实体型即学生、班级、课程、教师、参考书分别具有下列属性:学生:学号、姓名、性别、年龄班级:班级编号、所属专业系课程:课程号、课程名、学分教师:职工名、姓名、性别、年龄、职称参考书:书号、书名
40、、内容提要、价格,1-,124,1.6.2.1实体-联系方法(E-R),(a)实体及其属性图,1-,125,1.6.2.1实体-联系方法(E-R),(b)实体及其联系图,1-,126,1.6.2.1实体-联系方法(E-R),图. E-R图实例,1-,127,1.6.2.1实体-联系方法(E-R),实体联系方法(E-R方法)是抽象和描述现实世界的有力工具。用E-R图表示的概念模型独立于具体的DBMS所支持的数据模型,它是各种数据模型的共同基础,因而比数据模型更一般、更抽象、更接近现实世界。,1-,128,1.6.2.2语义对象模型,1988年提出的,作为一个新模型,支持者较少。语义对象有更接近用户的感觉,它建立在用户提供的表格,报表和查询基础上,允许描述更细节的内容,因而它对自底向上的数据库设计特别有用。 语义对象:语义对象是足以描述一个确切的本体的属性的命名集合。 属性:语义对象具有定义其特性的属性。 对象实例:对对象的实例化 对象标识符:用户用来识别对象实例的一个或多个对象属性。 属性域:关于属性的可能的取值的描述。,