




免费预览已结束,剩余88页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库原理与应用(第2版),信息技术学院2013年2月版本,上海建桥学院重点课程教改项目,第2章数据库系统结构,2.1数据和数据模型2.2概念层数据模型2.3组织层数据模型2.4数据库系统的结构2.5关系代数(补充),2.1数据和数据模型,1.数据人们从实际中抽取的感兴趣的事物特征。有一定的格式,如,性别是一个汉字的字符。格式的规定是数据的语法,而数据的含义是数据的语义。数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。通过解释、推论、归纳、分析和综合等方法,从数据所获得的有意义的内容称为信息。,示例,数据:(张三,9912101,男,1981,计算机系,应用软件)解释:张三是9912101班的男生,1981年出生,计算机系应用软件专业。,2020年5月25日12时43分,4,数据,信息,解释,2.1.2数据模型,对于模型,人们并不陌生。建筑模型飞机模型计算机中的模型是对事物、对象、过程等客观系统中感兴趣的内容的模拟和抽象表达,是理解系统的思维工具数据模型(datamodel)也是一种模型,它是对现实世界数据特征的抽象。,2020年5月25日12时43分,5,数据模型(续),数据库管理系统是基于某种数据模型对数据进行组织的,因此,了解数据模型的基本概念是学习数据库知识的基础。在数据库领域中,数据模型用于表达现实世界中的对象,即将现实世界中杂乱的信息用一种规范的、形象化的方式表达出来。,2020年5月25日12时43分,6,数据模型(续),数据模型既要面向现实世界,又要面向机器世界,因此需满足三个要求:能够真实地模拟现实世界;容易被人们理解;能够方便地在计算机上实现。,2020年5月25日12时43分,7,数据模型(续),数据模型实际上是模型化数据和信息的工具。根据模型应用的不同目的,可以将模型分为两大类:概念层数据模型(概念模型),从数据的语义视角来抽取模型,是按用户的观点来对数据和信息进行建模。组织层数据模型(组织模型)。从数据的组织层次来描述数据。,2020年5月25日12时43分,8,概念层数据模型,从数据的应用语义视角来抽取现实世界中有价值的数据并按用户的观点对数据进行建模。主要用在数据库的设计阶段,与具体的数据库管理系统无关,与具体的实现方式无关。,2020年5月25日12时43分,9,现实世界客观事物的抽象过程,数据的两个特征,静态特性:包括数据的基本结构、数据间的联系和数据中的约束。动态特征:指定义在数据上的操作。比如对学生的基本信息可以查询、修改和增加新记录等。,2.2概念层数据模型,1.基本概念2.实体-联系模型,2020年5月25日12时43分,12,1.基本概念,概念层数据模型是指抽象现实系统中有应用价值的元素及其关联关系,反映现实系统中有应用价值的信息结构,并且不依赖于数据的组织层数据模型。用于对信息世界建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的工具,也是数据库设计人员和业务领域的用户之间进行交流的工具,2020年5月25日12时43分,13,基本概念(续),概念层数据模型应该:具有较强的语义表达能力;能够方便、直接地表达应用中的各种语义知识;简单、清晰,易于被用户理解。是面向用户、面向现实世界的数据模型,与具体的DBMS无关。常用概念模型:实体-联系模型、语义对象模型,2020年5月25日12时43分,14,2.实体-联系模型,由P.P.S.Chen于1976年提出,即通常所说的E-R方法。这种方法由于简单、实用,因此得到了广泛的应用,也是目前描述信息结构最常用的方法。实体-联系方法使用的工具称为E-R图也把这种描述结果称为E-R模型。,2020年5月25日12时43分,15,实体-联系模型,实体属性联系,实体,具有公共性质的可相互区分的现实世界对象的集合。可以是具体的事物,也可以是抽象的概念或联系具体的事物:学生、课程、职工抽象的联系:学生选课,实体的表示方式,在E-R图中用矩形框表示实体,把实体名写在框内,比如学生实体可以表示为:,学生,属性,实体所具有的特征或性质。,身高年龄性别体重,属性的表示方式,用圆角矩形或椭圆框表示,框内写上属性名,并用连线连到相应实体,2020年5月25日12时43分,20,联系,联系是数据之间的关联集合,是客观存在的应用语义链。实体内部的联系:一个实体内属性之间的联系。职工实体内部的职工号等属性的联系实体之间的联系:不同实体之间的联系。课程实体和学生实体之间的选课联系。,联系的表示方式,实体之间的联系用菱形框表示,框内写上联系名,并用连线与有关的实体相连。,联系名,实体1,实体2,联系的种类,一对一联系(1:1)一对多联系(1:n)多对多联系(m:n),如果实体A中的每个实例在实体B中至多有一个(也可以没有)实例与之关联,反之亦然,则称实体A与实体B具有一对一联系,记作:1:1。,一对一联系(1:1),一对一联系的例子,部门和正经理(假设一个部门只有一个正经理,一个人只当一个部门的经理)、系和正系主任(假设一个系只有一个正主任,一个人只当一个系的主任)都是一对一联系。,管理,经理,部门,1,1,一对多的联系,如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个实例与之对应;而对实体B中的任意一个实例,在实体A中都只有一个实例与之对应,则称实体A到实体B的联系是一对多的。记作:1:n,有部门和职工两个实体,并且有语义:一个部门可以有多名职工,但是一个职工只在一个部门工作。则部门和职工之间的联系是一对多的,我们把这种联系命名为工作。,一对多联系的例子,工作,部门,职工,1,n,多对多的联系,如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个实例与之对应;而对实体B中的一个实例,在实体A中也有多个实例与之对应,则称实体A到实体B的联系是多对多的。记作:m:n,多对多联系的例子,有学生和课程两个实体,并且有语义:一个学生可以修多门课程,一门课程可以被多个学生修。那么学生和课程之间的联系就是多对多的,我们把这种联系命名为选课。,关联多个实体的联系,顾客购买商品:每个顾客可以从多个售货员那里购买商品,并且可以购买多种商品;每个售货员可以向多名顾客销售商品,并且可以销售多种商品;每种商品可由多个售货员销售,并且可以销售给多名顾客。,31,例题1,设某商业集团数据库中有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。公司和仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。(1)试画出ER图,并在图上注明属性、联系的类型,32,33,例题2,某研究所有若干个研究室,每一个研究室有一名负责人和多个研究人员,每个研究人员只属于一个研究室。研究所承接了多个科研项目,每个科研项目有多个科研人员参加,每个科研人员可以参加多个科研项目。(1)试画出ER图,并在图上注明属性、联系的类型,34,一个图书借阅管理数据库要求提供下述服务:1可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号惟一标识。2可随时查询书籍借还情况。包括借书人单位、姓名、借书证号、借书日期和还书日期。我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。3当需要时,可通过数据库中保存的出版社的电报、电话、邮编及地址等信息向有关书籍的出版社增购有关书籍。我们约定:一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。根据以上情况和假设,试作如下设计:(1)构造E-R图,并在图上注明属性、联系的类型,例题3,35,任务要求:学会使用画图工具绘制E-R图任务描述:有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型。,练习1绘制ER图,参考示例,生产,任务要求:使用绘图工具绘制E-R图任务描述:假设教学管理规定:一个学生可选修多门课,一门课有若干学生选修;一个教师可讲授多门课,一门课只有一个教师讲授;一个学生选修一门课,仅有一个成绩。学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;,任务2练习,参考示例,40,假设要为某工厂设计一个“库存销售信息管理系统”,对仓库、车间、产品、客户、销售员等信息进行管理。该工厂的数据主要有以下一些联系:1)车间生产的产品与仓库中的仓位有“入库”联系2)产品与仓位有“存储”联系3)销售员、客户、产品之间有“定单”联系4)客户、产品、仓位之间有“出库”联系,例题4,41,42,练习,假设要为某汽车货运公司的管理信息系统建立一个数据库,对车辆、司机、维修、保险和报销等信息和业务活动进行管理。该公司的业务管理规则如下:1)该公司有若干个车队,分别属于不同的部门管理2)每个车队有若干车辆和汽车司机3)车辆和司机分别在不同的保险公司里投保4)车辆由若干汽车维修公司进行维修5)每辆汽车需记载开支情况试为该数据库设计其ER模型。,43,44,例题5,现有学生社团管理数据库,经分析得到如下数据:学校分成若干院系,院系有院系名、电话号码。院系名唯一,假定一个系有多个电话号码。每个院系有若干学生,学生有学号、姓名、爱好等,每个学生只属于一个院系,而一个系可以有多个学生,学号唯一。学生社团的数据有:社团名、社团编号及社团活动经费。社团编号唯一。每个社团可以有多个学生参加,每个学生可以参加多个社团。设计ER图,在ER图上标出函数对应关系和完整性。,45,如果是多值属性的话,在椭圆形外面再套实线椭圆。,约束:如果是部分参与,用单线边表示;如果是完全参与,用双线边表示。一般,为了简化,很少在ER图上考虑参与约束,联系全部用单线边表示。,思考,学生教学管理系统的E-R图是怎样的?,局部E-R图设计示例,设简单的教务管理系统有如下语义描述:(1)一名学生可同时选多门课程,一门课程也可同时被多名学生选修。对学生选课需要记录考试成绩信息,每个学生每门课程只能有一次考试。对每名学生需要记录学号、姓名、性别信息,对课程需要记录课程号、课程名、课程性质信息。,局部E-R图设计示例(续),(2)一门课程可由多名教师讲授,一名教师可讲授多门课程。对每个教师讲授的每门课程需要记录授课时数信息。对每名教师需要记录教师号、教师名、性别、职称信息;对每门课程需要记录课程号、课程名、开课学期信息。,设计局部E-R图示例(续),(3)一名学生只属于一个系,一个系可有多名学生。对系需要记录系名、系学生人数和办公地点信息。,设计局部E-R图示例(续),一名教师只属于一个部门,一个部门可有多名教师。对部门需要记录部门名、教师人数和办公电话信息。,设计全局E-R模型,将局部E-R图集成为全局E-R图;需消除各分E-R图合并时产生的冲突。,冲突的种类,属性冲突:属性域冲突属性取值单位冲突命名冲突:同名异义异名同义结构冲突:同一对象在不同应用中有不同的抽象。同一实体在不同的局部E-R图中包含的属性个数和属性排列次序不完全相同。,无冲突,无冲突,结构冲突,合并后,优化全局E-R模型,实体个数尽可能少;实体所包含的属性尽可能少;实体间联系无冗余。,“系”与“部门”:代表的含义相同,可合并为一个实体。但有:命名冲突:“系名”和“部门名”,合并后统一为“系名”。结构冲突:合并后为属性并集。,59,对ER模型的理解(一),ER模型是认识客观世界的一种方法、工具。ER模型具有客观性和主观性两重含义。ER模型是在客观事物或系统的基础上形成的,在某种程度上反映了客观现实,反映了用户的需求,因此ER模型具有客观性。但ER模型又不等同于客观事物的本身,它往往反映事物的某一方面,至于选取哪个方面或哪些属性,如何表达则决定于观察者本身的目的与状态,从这个意义上说,ER模型又具有主观性。,60,对ER模型的理解(二),ER模型的设计过程,基本上是两大步:先设计实体类型(此时不要涉及到“联系”);再设计联系类型(考虑实体间的联系)。具体设计时,有时“实体”与“联系”两者之间的界线是模糊的。数据库设计者的任务就是要把现实世界中的数据以及数据间的联系抽象出来,用“实体”与“联系”来表示。另外,ER模型应充分反映用户需求,ER模型要得到用户的认可才能确定下来。,61,作业,1、请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:读者号、姓名、地址、性别、年龄、单位。对每本书存有:书号、书名、作者、出版社。对每本被借出的书存有读者号、借出日期和应还日期。要求给出ER图。2、设有如下电影数据:“电影(Movies)”有title,year,length和filmType属性;“演员(Starts)”有name和address属性;“制作公司(Studios)”有name和address属性。每部电影必定属于一个制作公司;每部电影可以有多名演员。请用E-R图表示上述信息。,作业(续),3、汽车保险公司需要记录如下信息:客户信息(person)、客户拥有的车辆信息(car)、每辆车发生过的事故信息(accident)。客户有driver-id,address,name属性;汽车有license,model,year属性;事故有report-number,location,date属性;另外还需要记录每次事故的驾驶员信息(driver),以及事故涉及到的人员的赔偿数额(damage-amount)。请用E-R图表示。,62,2.3组织层数据模型,2.3.1关系数据模型的数据结构2.3.2关系数据模型的数据操作2.3.3关系数据模型的数据完整性约束,一些基本术语,关系(relation):就是二维表,它满足如下性质:关系表中的每一列都是不可再分的基本属性。表中各属性不能重名。表中的行、列次序并不重要。,不是基本属性,不是关系,一些基本术语(续),属性(attribute):二维表中的每个列称为一个属性(或叫字段)。每个属性有一个名字,称为属性名。二维表中对应某一列的值称为属性值;二维表中列的个数称为关系的元数。如果一个二维表有n个列,则称其为n元关系。,一些基本术语(续),值域(domain)二维表中属性的取值范围称为值域。如:“年龄”取值为0150的整数“性别”的取值为“男”和“女”,一些基本术语(续),元组(tuple):二维表中的一行数据称为一个元组(记录值)。,(0611101,李勇,21,男,计算机系)(0611102,刘晨,20,男,计算机系)(0611103,王敏,20,女,计算机系)(0621101,张立,20,男,信息管理系)(0621102,吴宾,19,女,信息管理系),元组,一些基本术语(续),主码(primarykey):当一个关系中有多个候选码时,可以从中选择一个作为主码。每个关系只能有一个主码。主码也称为主键或主关键字,用于惟一地确定一个元组。主码可以由一个属性组成,也可以由多个属性共同组成。,主码示例,学生关系模式:(学号,姓名,年龄,性别,所在系)选课关系模式:(学号,课程号,成绩):一个学生对一门课程只能有一次考试;(学号,课程号,考试次数,成绩):一个学生对一门课程有多次考试。,学号,,学号,课程号,,学号,课程号,考试次数,,一些基本术语(续),主属性(primaryattribute)和非主属性(nonprimaryattribute)包含在任一候选码中的属性称为主属性。不包含在任一候选码中的属性称为非主属性。,71,ABCDEa1b1c1d1e1a2b2c2d2e2a3b3c3d3e3a4b4c4d4e4,数据库技术的术语,字段、数据项,记录类型,记录1,记录2,记录3,记录4,字段值,关系模型术语,属性,关系模式,元组1,元组2,元组3,元组4,关系实例,属性值,将上述表格抽象化,R,表名,关系名,术语对比,关系模型的数据操作,关系数据模型的数据操作主要包括四种查询插入删除修改,关系模型的数据完整性约束,数据的完整性是指保证数据正确性的特征。数据完整性是一种语义概念,包括两方面:与现实世界中应用需求的数据的相容性和正确性;数据库内数据之间的相容性和正确性。实体完整性参照完整性用户定义的完整性,实体完整性,实体完整性指的是关系数据库中所有的表都必须有主码。而且表中不允许存在如下的记录:无主码值的记录主码值相同的记录,参照完整性,参照完整性一般是指实体(表)之间的关联关系。在关系数据库中用外码来实现参照完整性。外码一般出现在联系所对应的关系中,用于表示两个或多个实体之间的关联关系。外码实际上是表中的一个(或多个)属性,它引用某个其他表(特殊情况下,也可以是外码所在的表)的主码。,外码引用例1,学生,专业,属于,(学号,姓名,专业号,),(专业号,专业名),外码引用例2,学生,课程,修课,(学号,姓名,),(课程号,课程名,),(学号,课程号,成绩,),参照完整性规则,参照完整性规则就是定义外码与主码之间的引用规则。对于外码,一般应符合如下要求:或者值为空;或者等于其所应用的关系中的某个元组的主码值。外码说明:外码不一定要与被引用列同名,只要它们的语义相同即可。,外码为空示例,职工(职工号,职工名,部门号,工资级别)部门(部门号,部门名)如果某新来职工还没有被分配到具体的部门,则其“部门号”就为空值;如果职工已经被分配到了某个部门,则其部门号就有了确定的值(非空值)。,用户定义的完整性,用户定义的完整性是指明关系中属性的取值范围,也就是属性的值域,可限制关系中属性的取值类型及取值范围,防止属性值与应用语义矛盾。示例:成绩:0.100或优、良、中、及格、不及格,2.4数据库系统的结构,2.4.1模式的基本概念2.4.2三级模式结构2.4.3数据库的模式映像功能与数据独立性,考察数据库系统的结构可以有多种不同的层次或不同的角度。从数据库管理角度看,数据库系统通常采用三级模式结构。这是数据库系统的内部结构;从数据库最终用户角度看,数据库系统的结构分为集中式结构、文件服务器结构、客户/服务器结构等。这是数据库系统的外部结构。,2.4.1模式的基本概念,模式是用给定的数据模型对具体数据的描述。模式是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及型的描述,不涉及具体的值。关系模式是关系的“型”或元组的结构共性的描述。,2.4.2三级模式结构,外模式,也称为用户模式、子模式。用户对现实系统中感兴趣整体的局部数据结构的描
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入职车间安全培训内容课件
- 企业生产安全培训师课件
- 加快形成新质生产力:核心要义
- 河南体彩资金管理办法
- 物流公司公章管理办法
- 《中小学生守则》《中学生日常行为规范》知识竞赛试题(附答案)
- 2025年中央八项规定精神应知应会50题测试卷带答案详解典型题
- 2025年政工师考试试题及参考答案
- 民族教育意识形态建构-洞察及研究
- 清明节主题班会《清明节缅怀先烈》课件
- 1.1《土壤里面有什么》课件 2025-2026学年苏教版科学三年级上册
- 汽修厂污染防治知识培训课件
- 海运销售入门培训
- 租房托管班合同(标准版)
- 2025-2026学年苏教版(2024)小学数学二年级上册(全册)教学设计(附目录P226)
- 2025年北师大版新教材数学一年级上册教学计划(含进度表)
- 学校2025年秋季学期1530安全教育记录(全学期带内容模板)
- 2025四川农信(农商行)社会招聘800人笔试历年典型考题及考点剖析附带答案详解
- 人教版2024-2025学年七年级数学上册教学计划(及进度表)
- 宁夏普通高中毕业生登记表学生综合素质评价手册完整版
- 康复医学概论
评论
0/150
提交评论