精华内容
下载资源
问答
  • 数据库实体之间的联系

    千次阅读 2020-05-09 18:21:01
    二、实体之间的联系: 一般地,把参与联系的实体型的数目称之为联系的度。 一个实体型之间的联系称之为一元联系,联系的度为1。一元联系包括:一个实体型内部各属性之间的联系和同一个实体集内的各实体间的联系。 两...

    一、名词解释:

    实体:客观存在并可以相互区分的事物。

    实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体。

    实体集:同型实体的集合。

    二、实体之间的联系:

    一般地,把参与联系的实体的数目称之为联系的度。
    一个实体型之间的联系称之为一元联系,联系的度为1。一元联系包括:一个实体型内部各属性之间的联系和同一个实体集内的各实体间的联系。
    两个实体型之间的联系称之为二元联系,联系的度为2。三个实体型之间的联系称之为三元联系,联系的度为3。N个实体型之间的联系称之为N元联系,联系的度为N。

    展开全文
  • 数据库实体联系模型与关系模型

    千次阅读 2020-03-02 19:11:33
    数据库设计是指根据用户的需求,在某一具体...这就需要规划课程、学生、老师、学习资料等数据构成以及相互之间的关系。因此,规划数据构成及数据间关系,并应用某一具体的数据库管理系统如MySQL构建数据库的过程就是...

    数据库设计是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。例如,编程微课是在线编程教育项目,该项目涉及到课程、学生、老师、学习资料等数据,这些数据都要被存储下来,并且能够方便的增加、修改、删除和查询。这就需要规划课程、学生、老师、学习资料等数据构成以及相互之间的关系。因此,规划数据构成及数据间关系,并应用某一具体的数据库管理系统如MySQL构建数据库的过程就是数据库设计。

    由于项目需求的易变性和数据的复杂性,数据库设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程。数据库设计步骤如下图所示:

     

     

                                           

                                                                    图2-5 数据库设计过程流程图

     

    需求分析阶段主要分析项目涉及的业务活动和数据的使用情况,弄清所用数据的种类、范围、数量以及在业务活动中的存储情况,确定用户对数据库系统的使用要求和各种约束条件等,形成数据库需求说明书

    概念结构设计阶段根据数据库需求说明书,创建数据库概念结构,描述概念结构的有力工具是ER模型

    ER模型表示的概念结构模型独立于任何一种数据模型,并独立于任何一个具体的数据库管理系统。因此,需要把概念结构设计阶段设计的ER模型转换为关系数据模型二维表结构,此阶段为逻辑结构设计阶段

    物理设计阶段是在计算机的物理设备上确定应采取的数据存储结构和存取方法,以及如何分配存储空间等问题。关系数据库物理设计的主要工作是由系统自动完成的,数据库设计者只要关心索引文件的创建即可

    验证设计是在上述设计的基础上,收集数据并建立数据库,运行应用任务来验证数据库的正确性和合理性,当发现设计问题时,可能需要对数据库设计进行修改。

     

    实体联系模型(ER图)

    当前常用的概念数据模型是ER模型。ER模型描述数据库的概念模式,不考虑数据库的逻辑与物理结构,它充分反映现实世界,易于理解,将现实世界的事物以信息结构的形式很方便地表示出来。

    例如,课程是编程微课的主要内容,课程涉及到老师、学生等对象等实体,进一步分析还涉及到课程视频、课程资料、课程价格等各种数据。在用ER模型对课程分析和描述中,对这些实体以及实体之间的联系给出了确切的定义。

    ER模型有四个概念,分别是实体、属性、联系、实体集

     

    实体

    实体是客观存在并且可以互相区分的事物,可以是人或物,也可以是抽象的概念。在现实世界,实体并不是孤立存在的,实体与实体之间也存在联系。例如,课程与学生之间存在学生学习课程的联系,课程与老师之间存在老师创建课程的联系。

     

    属性

    每个实体具有的特征称为属性,一个实体可以由若干属性来描述,属性都有其取值范围,称为值集或值域。例如,课程实体可以由课程编号、课程名称、授课老师、类别、简课程介、价格等属性组成。唯一地标识实体的属性或属性组称为实体的关键字。例如,属性值“20180603,Java编程基础,郎老师,编程语言,课程以浅显易懂的语言,以常见的生活场景为案例,带领大家逐步进入计算机编程世界,86”。其中20180603是课程编号的属性值,该编号在在所有的课程实体中是唯一的,该属性就是课程实体的关键字。

     

    联系

    实体不是孤立存在的,实体之间是有联系的。实体之间的联系可以分为三类:一对一(1:1)、一对多(1:n)和多对多(m:n)。例如,一个老师可以创建多个课程,老师与课程的联系就是一对多的;如果一个老师只能创建一个课程,则老师和课程的联系就是一对一的。在进行问题分析时,要根据客观实际,抓住问题实质进行现实世界的抽象

     

    实体集

    具有相同属性的实体的集合称为实体集。在同一实体集中,每个实体的属性及其值域是相同的,但可能取不同的值。例如,所有的课程实体组成课程实体集,所有的老师实体组成老师实体集。

     

    绘制ER图

    ER图是ER模型的图形化描述。俗话说:一张图胜过千言万语,用ER图可以清晰地描述出ER模型的结构。

    规范的ER图可以帮助人们对ER模型的统一认识,便于沟通和讨论,有助于工作效率的提高。它使用一组预定义的符号来表示ER模型的实体、属性、联系等概念,这些预先定义的符号已经标准化,从而让全世界的开发人员都可以采用这些符号而不会引起混淆。ER图的基本图素有如下的约定:

     

                           

                                                                              图 2-6 ER图的基本图素

    (1)用长方形表示实体,在框内写上实体名。

    (2)用椭圆表示实体的属性,并用连接线把实体与属性连接起来,属性如果是实体的关键字,可以用双线椭圆表示。

    (3)用菱形表示实体间的联系,菱形内写上联系名,用连接线把菱形分别与有关的实体相连接,在连接线旁标上连接的类型,如果联系也有属性,则联系的属性和菱形连接。

     

                                            

                                                                            图 2-7 用ER图表示的课程管理

    图2-7所示为用ER图表示一个课程管理,这是一个简化的课程管理模型,课程由老师创建并属于老师,两者之间是一对多的联系。课程与学生直接存在学习的联系,课程与学生是多对多的联系,因此联系也有属性,分别是学生编号和课程编号。双线椭圆表示的属性编号是实体的关键字。

    通过图2-7可以看出,ER模型是依赖业务运营方式的,它是企业运营方式的信息化描述。企业业务的改变直接影响着ER图的结构和实体间的联系。即使是相同的业务,数据库设计人员侧重分析的数据不同,给出的ER图也可能是不同的。

    对于设计比较复杂的系统来说,有时为了使ER图简洁明了,在ER图中可以省略属性,只画出实体和联系,将属性以表格的形式另外列出。如图2-8所示,给出的是不包含属性的ER图,

     

                                                    

                                                                     图 2-8 不包含属性的课程管理ER图

    ER图直观易懂,是系统开发人员和客户之间很好的沟通工具。对于客户来说,它概况了企业运营的方式和各种联系;对于系统开发人员来说,它从概念上描述了一个应用系统数据库的信息组织。因此,如能准确画出企业运营方式的ER图,就意味着搞清楚了企业的业务运营方式,以后可以根据ER图,结合具体的数据库管理系统,把ER图转换为数据库管理系统所能支持的数据模型。这种逐步推进的数据库设计方法已经普遍应用于数据库设计中,画出应用系统的ER图成为数据库设计的一个重要步骤。

     

    关系模型

    ER图给出了实体联系模型的图形化描述,增强了开发人员与客户的沟通能力。在需求开发阶段ER模型是非常重要的,也是从企业的业务运营方式到概念模型的映射。

    到了设计阶段。就需要在概念模型的基础上建立关系模型,关系模型是用二维表来表示实体集属性间的关系以及实体间联系的形式化模型。它将用户数据的逻辑结构ER模型归纳为满足一定条件的二维表的形式。

    ER模型中的一个实体或联系对应一张二维表,ER模型中的实体属性转换为二维表的列,也可称为属性,每个属性的名称称为属性名,也可称为列名。每个属性取值范围称为该属性的域。二维表每个属性或列取值后的一行数据称为二维表的一个元组,也可以称为一条记录。二维表可以包含有限个不重复的记录。

    图2-9给出了实体“课程”、“老师”转化为关系模型的二维表。每个课程是课程表中的一条记录或一个元组,即一行;同样,每个老师的属性也反映在老师表中的一行;课程表和老师表的联系反映在课程表属性“老师编号”字段上,该字段和老师表的编号字段为同一个字段,因此通过“老师编号”字段可以确定是哪位老师建立的课程。

     

                               

                                                                   图 2-9 由实体课程和老师转化的课程和

    二维表的不可重复性可知,关系中必然存在一个属性或属性组,能够唯一标识一个元组,该属性或属性组称为关键字。当关系中存在多个关键字时,称它们为候选关键字,指定其中一个为主关键字,简称主键。

    设计二维表时,关系应满足如下性质。

    (1)表中每一列的取值范围都是相同的,也就是数据类型相同。

    (2)不同列的取值范围可以相同,但列名称不能相同。

    (3)表中列的次序可以变换,不影响关系的实际意义。

    (4)同一个表中,不允许存在两个完全相同的元组,这是集合的一个基本性质,保证了关系中元组的唯一性。

    (5)行的次序可以任意交换。

    (6)关系中的任何一个属性值都必须是不可分的元素。

    展开全文
  • 对于设计关系型数据库,关键的是分清楚有哪些实体,实体之间的联系,以及联系属性。1. 识别关联集团的要求。 2. 定义组织相对于每一个关联集团的任务和战略。3. 解释和验证组织战略集。 第二步是将组织战略集转化成...

    对于设计关系型数据库,关键的是分清楚有哪些实体,实体之间的联系,以及联系属性。

    1. 识别关联集团的要求。

    2. 定义组织相对于每一个关联集团的任务和战略。

    3. 解释和验证组织战略集。

     第二步是将组织战略集转化成管理信息系统战略。管理信息系统战略应包括系统目标、约束以及设计原则等。这个转化的过程对应组织战略集的每个元素识别对应的管理信息系统战略约束,然后提出整个管理信息系统的结构。 战略集的转化过程还不能形成算法的形式,因为对于不同的组织,其战略集的内容相差很大。不过确定和评价组织的战略集的过程,还是有系统化的方法,即用关联集团要求的概念。一旦确定了组成的战略元素,要由组织的最高负责人审查,这一过程可以采取结构性的提问法。  

    实体之间的关系做好了,就可以开始建表了。
    展开全文
  • 书籍:《数据库管理系统:原理与设计》 实体集:相似的实体 实体通过属性来描述。 对于每个与实体集相关的属性,...联系就是两个或多个实体之间的一种关联。 把相似的联系放在一起,组成一个联系集。 联系集...

    书籍:《数据库管理系统:原理与设计》

    实体集:相似的实体

    实体通过属性来描述。

    对于每个与实体集相关的属性,必须确定该属性的值域。

    对于每个实体集,我们都选择一个key,key就是一组最小的属性集合。它们的值能唯一确定实体中的每个实体。有可能存在多个候选key,这时我们在其中指定一个作为主key。

    联系就是两个或多个实体之间的一种关联。

    把相似的联系放在一起,组成一个联系集。

    联系集也可以具有描述性属性。

    !联系必须能够用参与它的实体唯一确定,而不必引用该联系的描述属性。例如,在works_in联系集中,每个联系都能用雇员的ssn和部门的did来唯一标识。对于一个给定的ssn和did,不可能有多余一个的相应since值(联系中的一个属性)

    有时一个联系可能包含两个同一实体集中的两个实体。如果一个实体集在一个联系集中扮演多种角色,角色指示器与联系集中的属性连在一起给出了一个唯一的名字。

     

    键约束:用箭头表示,也就是说一个实体集最多在联系集中出现一次。对于一个给定的实体,可以唯一确定出现在联系集中的联系。

     

    Departments实体最多出现在一个manages联系中。

    这样的联系有时也称为一对多。如果employee实体也有一个箭头指向manager的话,那么这个联系集就变成了一对一。

    参与约束:分为部分的和完全的。如果一个联系集中的实体集是全部参与的话,那么在两者之间就用粗线连接。

    弱实体:一个弱实体可以通过它的一些属性与其他实体的主码结合起来形成唯一标识,称为识别属主。

    必须满足下面的限制:

    1. 识别属主集合弱实体集必须参与一个一对多的联系集(一个识别属主可以与一个或多个弱实体相关联,但每个弱实体只有一个识别属主),这个联系集称为是这个弱实体的识别联系集。
    2. 弱实体集在联系集中必须是全部参与(粗线)的。

    对于给定的识别属主,一个弱实体中,用来标识该实体集的属性集成为这个弱实体的部分键。用下划虚线表示。一个弱实体通过识别属主的主键和自身的部分键来唯一标识。

    !弱实体集和它对应的联系集的方框要加粗线。

    类层次:类似继承,但是又不完全一样。

     

    这些实体集实例的查询有一个约束条件,对所有Employees实体的查询,必须也要考虑所有的Hourly_Emps和Contract_Emps实体。

    可以从两个方面来考虑类层次:

    1. 将实体集进行细化成子类。细化就是一个标识某个实体集(超类)的子集的过程。
    2. 将两个实体集(子类)进一步泛化为一个实体集(父类)

    根据ISA的结构可以指定两种约束,即交迭约束(overlap)和覆盖约束(covering)。

    交迭约束决定是否允许两个子类含有相同的实体,如果没有特别说明,则默认的规则是实体集之间不存在交迭。

    覆盖约束决定了子类中的实体是否包括超类中的所有实体。默认没有覆盖约束。

     

    聚合:聚合允许一个联系集(由一个虚线框表示)参与另一个联系集。

    如果一个联系集中的属性,对于某一个实体来说,这个值都是相同的,那么会导致信息冗余,比如说一个部门经理和部门形成一个联系集,这个联系集有一个属性表示这个经理管理的所有部门的预算总和。这个时候可以考虑采用继承isa的关系,将经理作为雇员的一个子类,并且将预算总和作为经理实体集的一个属性。

    我们可能将属性与联系相关联,而不是与适当的实体相关联,通常这样的错误会导致数据冗余。

    选用聚合还是选用一个三元联系,主要看是否存在一个使联系集合实体集(或另一个实体集)相关联的联系,也可以用要表达的完整性约束来指导选择过程。

     

    转载于:https://www.cnblogs.com/linjj/p/4361370.html

    展开全文
  • 数据库表和它的实体

    千次阅读 2017-09-25 15:13:41
    数据库表中有很多字段信息时,为了能够对数据库中的字段信息能够更方便的获取,需要在程序中建立与表对应的实体类,使取出的每一例对象信息按照list的方式存储...(3)建立表和实体之间的联系 (4)在程序中查询表
  • Separation),是指地球上所有人都可以通过六层以内熟人链和任何其他人联系起来。通俗地讲:“你和任何一个陌生人之间所间隔人不会超过六个,也就是说,最多通过六个人你就能够认识任何一个陌生人。” 我们...
  • 如何创建数据库之间的关联关系

    万次阅读 2015-10-24 16:04:22
    例如两张表:Husband和wife,在数据库中设置彼此主键id相互关联(少用) 此时在两个实体类中不用添加任何对象属性 2.一对一单向外键关联 例如两张表:Husband和wife ***在设计实体类时建立联系: 对象
  • 数据库而言,实体往往指某类事物的集合。...实体之间的关系有 一对一(如一个学生对应一个档案,一个档案对应一个学生); 一对多,多对一; 多对多; 数据库中一对一的实现方式: (1)唯一外键方式:在A和B任...
  • 实体联系模型用实体表示事务,用联系表示物体之间的联系 概念模型 概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行...
  • E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。 它是描述现实世界关系概念模型的有效方法。...用”菱形框“表示实体之间的联系成因,...
  • 1、实体 ...实体内部的联系通常指组成实体的各属性之间的联系,实体之间的联系通常指不同实体集之间的联系。 实体之间的联系有一对一、一对多和多对多等多种类型。 4、概念模型 E-R图(Entity-Relation
  • 数据库实体关系图(ER图)

    千次阅读 2020-11-08 10:07:49
    一,组成元素 元素 描述 表示形似 ... 实体和实体之间以及实体内部关系 用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来, 同时在无向边旁边标上联系的类型 ...
  • 实体之间的关系:用菱形表示,框内标准联系名称,并用先连接菱形和两个实体 联系的类型 一对一联系(1:1): 设A,B为两个实体集,如果A中每个实体至多与B中的一个实体有联系,反过来,如果B中每一个实体...
  • 数据库

    2019-10-23 14:51:50
    关系型数据库:关系型数据库源于关系模型,关系模型认为,世界由实体和实体之间的联系组成,关系型数据库是一种以表作为实体,以主键和外键关系做联系的一种数据库结构 主键 在关系型数据库表中,用唯一的标识符来...
  • 1.几个基本概念 实体-联系(E-R)模型是基于如下的一种认识:世界由一组实体和实体之间的相互联系组成。E-R模型是一种语义模型, 前面也提到过,这种模型经常作为关系数据库模型的基础。 很多数据库设计工具也都使用了...
  • 数据库的设计

    2020-05-12 21:18:09
    数据库设计就是将数据库中的数据实体及这些数据实体之间的关系,进行规划和结构化的过程。 糟糕的数据库设计表现在以下方面 1.数据冗余,存储空间浪费 2.内存空间浪费 3.数据更新和插入的异常 良好的数据库设计表现...
  • public class DataBase { public static void main() { } } ... 第二部分:数据库设计 ... 前两个章节关注数据库模式设计: ... 表示不同,它将称作实体的基本对象和这些对象之间的联系区分开来。...
  • 用户和os之间的一层数据管理软件。 1、提供数据操纵语言DML对数据库增删改查 2、数据库的建立和维护 3、提供数据控制功能;在数据库建立,运行和维护时,DBMS管理数据的安全性,完整性,并发...
  • 实体关系图(数据库资料)

    千次阅读 2011-01-26 12:06:00
    E-R模型最常见的运用是在数据库设计的分析阶段,也就是数据库设计者和数据库用户之间的沟通工具和桥梁。E-R模型的作用是建构一个概念数据模型,而概念数据模型正是数据库结构的表示法,而且這种表示
  • 本节书摘来自异步社区出版社《图数据库》一书中的第2章,第2.3节,作者: 【美】Ian Robinson , Jim Webber , Emil Eifrem,更多...作为用户,我们推断实体之间的语义相关性,但数据模型与数据库本身却忽视这些关联...
  • 数据库的表设计

    2020-12-14 21:13:23
     二、实体的联系  我想说的是,很简单,数据库里表跟表间的关系莫过于三种:一对一;多对多;一对多。  一对一其实是说我们建的主表跟相关联的表之间是一一对应的,比如说,我建了一个学生基本信息表:t_...
  • 数据库的分类

    2020-11-07 15:29:39
    以树型结构表示实体及其之间的联系,关系只支持一对多,代表数据库lLBM LMS。 关系型数据库 ?关系 :关系就是二维表,其中:表中的行、列次序并不重要 ?行row:表中的每一行,又称为一条记录 ?列column:表中的每一...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,064
精华内容 425
关键字:

数据库实体之间的联系