精华内容
下载资源
问答
  • 关系数据模型、基本概念关系模型的基本术语、关系代数
    千次阅读
    2020-12-31 10:47:18

    关系数据模型

    关系数据模型

    关系模型由关系模型的数据结构、关系模型的操作集合和关系模型的完整性约束三部分组成,这三部分也称为关系模型的三要素

    数据结构

    关系数据模型源于数学,它用二维表来组织数据,而这个二维表在关系数据库中称为关系。关系数据库就是表或者说是关系的集合。

    数据操作

    关系数据模型给出了关系操作的能力,包括。

    1. 传统的运算关系:并(union)、交(intersection)、差(difference)、广义迪卡尔积(extended cartesian product)
    2. 专门的关系运算:选择(select)、投影(project)、连接(join)、除(divide)
    3. 有关的数据操作:查询(query)、插入(insert)、删除(delete)、更改(update)

    关系模型中的操作对象是集合(或表),而不是单个数据行,也就是说,关系模型中操作的数据以及操作的结果都是完整的集合(或表),这些集合可以只包含一行数据,也可以不包含任何数据。

    完整性约束

    在数据库中数据的完整性是指保证数据正确的特征,数据完整性是一种语义概念,它包括两个方面:

    1. 与现实世界中应用需求的数据的相容性和正确性。
    2. 数据库内数据之间的相容性和正确性。

    完整性约束在关系型数据库中一般分为三类,实体完整性(主键)、参照完整性(外建)、用户定义完整性

    关系型数据库的基本术语

    基本术语

    1. 关系(表)

      通俗地讲,**关系(relation)**就是二维表,二维表的名字就是关系的名字。

    2. 属性(列)

      二维表中的每一个称为属性(attribute),没一个属性有一个名字,称为属性名。n列就是n元。

    3. 值域(取值范围)

      二维表中属性的范围称为值域(domain)。如性别只能‘男’或‘女’。

    4. 元组(行)

      二维表中的一行数据称为一个元组(tuple)

    5. 分量(元组中每个属性的值)

      元组中的没一个属性值称为元组的一个分量(component),n元关系的每个元组有n个分量。

    6. 关系模式(表结构、表头)

      二维表的结构称为关系模式(relation schema),或者说关系模式就是二维表的表框架或表头结构。设有关系名R,属性分别是a、b、c、d,则关系模式可以表示为:R(a,b,c,d)。如果将关系模式理解为数据类型,则关系就是该数据类型的一个具体值。

    7. 关系数据库

      对应于一个关系模型的所有关系的集合称为关系数据库(relation database)

    8. 候选键

      如果一个属性或属性集(可以有多个候选键)的值能够唯一标识一个关系的一个元组而又不包含多余的属性,则称该属性或属性集为候选键(candidate key),如学号、身份证。候选键又称为候选关键字或候选码。

    9. 主键

      当一个关系中有多个候选键时,可以从中选择一个作为主键(primary key)。每个关系只能有一个主键。主键也称为主码或关键字,是表中的属性或属性组,用于唯一地确定一个元组。

    10. 主属性与非主属性

      包含在任意候选键中的属性称为主属性(primary attribute);不包含任一候选键的属性为非主属性(nonprimary attribute)

    术语对比表:

    关系术语一般的表格属于
    关系名表名
    关系模式表头(表中所含列的描述)
    关系(一张)二维表
    元组记录或行
    属性
    分量一条记录中的某个列的值

    对关系的限定

    关系可以看成二维表,但并不是所有二维表都是关系。关系数据库对关系有一些限定,如:

    1. 关系中的每个分量都必须是不可再分的最小数据。
    2. 表中列的数据类型是固定的,即列中的内一个分量都是相同类型的数据,来自相同的值域。
    3. 不同列的数据可以取自相同的值域,每个列称为一个属性,每个属性有不同的属性名。
    4. 关系表中列的顺序不重要,即列的次序可以任意交换,不影响其表达的语义。
    5. 行的顺序也不重要,交换行数据的顺序也不影响其内容。
    6. 同一个关系中的元组不能重复,即在一个关系中,不能有两个元组的值完全相同相同。

    关系代数

    关系代数是关系操作语言的一种传统的表示方式,它是一种抽象的查询语言,是一种单次关系(或者说是集合)语言。包括运算对象、运算符和运算结果。

    关系代数可分为两大类:

    1. 传统集合运算:这类运算完全把关系看作元组的集合,包括广义迪卡尔积运算、并运算、交运算、差运算
    2. 专门的关系运算:这类关系除了把关系看作元组的集合以外,还通过运算表达了查询的要求,包括选择、投影、连接、除运算

    传统关系运算

    1. 并运算

      设关系R与S均是n目关系,关系R与S的并记为:

      R ∪ S = { t ∣ t ∈ R ∨ t ∈ S } R \cup S = \{t|t \in R \lor t\in S\} RS={ttRtS}

      其结果仍是n目关系,由属于R或S的元组组成。

    2. 交运算

      设关系R与S均为n目关系,关系R与S的交记为:

      R ∩ S = { t ∣ t ∈ R ∧ t ∈ S } R \cap S = \{ t| t\in R \land t \in S \} RS={ttRtS}

      其结果仍是n目关系,由属于R也属于S的元组组成。

    3. 差运算

      设关系R与S均为n目关系,关系R与S的差运算记为:

      R − S = { t ∣ t ∈ R ∧ t ∉ S } R-S = \{t| t\in R \land t \notin S\} RS={ttRt/S}

      其结果仍是n目关系,由属于R且不属于S的元组组成。

    4. 广义迪卡尔积

      广义迪卡尔积不要求参加运算的两个关系具有相同的目数。

      两个分别为m目和n目的关系R和S的广义迪卡尔积是一个有 m+n 个列的元组的集合。元组的前m列是关系R的一个元组,后n个是关系S的一个元组。若R有K1个元组,S有K2个元组,则R和S的广义迪卡尔积有 K1*K2个元组,记为:

      R × S = { t r t s ^ ∣ t r ∈ R ∧ t s ∈ S } R \times S = \{ \hat{t_r t_s} | t_r \in R \land t_s \in S \} R×S={trts^trRtsS}

      其中, t r t s ^ \hat{t_r t_s} trts^表示有两个元组前后有序连接成的一个元组。

    专门的关系运算

    1. 选择

      选择是指从指定的关系中选出满足给定条件的元组而组成的一个新的关系。表示为:

      KaTeX parse error: Undefined control sequence: \and at position 28: …= \{t | t\in R \̲a̲n̲d̲ ̲F(t)= true\}

      其中 σ \sigma σ 是选择运算符,R是关系名,t是元组,F是逻辑表达式。

      如: σ S d e p t = ′ 计 算 机 ′ ( S t u d e n t ) \sigma_{Sdept='计算机'}(Student) σSdept=(Student)

    2. 投影

      投影运算是从关系R中选取若干列,并用这些属性组成一个新的关系。表示为:

      ∏ A ( R ) = t . A ∣ t ∈ R \prod_A(R) = {t.A | t\in R} A(R)=t.AtR

      其中, ∏ \prod 是投影运算符,R是关系名,A是被投影的属性或属性组。t.A 表示t这个元组中相应于属性A的分量,也可以表示为t[A]。

      投影运算一般由两步完成:

      1. 选出指定的属性,形成一个可能含有重复行的新关系。
      2. 删除重复行,形成结果关系。

      如: ∏ S n a m e , S d e p t ( S t u d e n t ) \prod_{Sname,Sdept}(Student) Sname,Sdept(Student)

    3. 连接

      连接运算用来连接相互之间有联系的两个关系,从而产生一个新关系。这个过程通过连接属性来实现。连接运算主要有一下几种:

      1. θ \theta θ 连接( θ \theta θ 是比较运算符)

        表示为 { t r t s ^ ∣ t r ∈ R ∧ t r ∈ S ∧ t r [ A ] θ t s [ B ] } \{\hat{t_r t_s}|t_r \in R \land t_r \in S \land t_r[A] \theta t_s[B]\} {trts^trRtrStr[A]θts[B]}

        其中A和B分别是关系R和S上语义相同的属性或属性组,$\theta $是比较运算符

      2. 等值连接( θ \theta θ 连接的特例)

        θ \theta θ连接一致,是当 θ \theta θ为=时的情况

      3. 自然连接

        自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性或属性组,并且在连接结果中去掉重复的列,使公共属性列只保留一个。

        自然连接与等值连接的区别:

        1. 自然连接要求相等的分量必须有共同的属性名,等值连接则不要求
        2. 自然连接要求吧重复的属性名去掉,等值连接不要求
      4. 外部连接

        如果希望不满足连接条件的元组也出现在连接结果中,则可以通过外连接(outer join)操作实现。外连接有三种形式:左外连接、右外连接、全外连接。含义是将指定一边(如左连接就是左边的关系)中不满足的元组也保留到连接后的结果中,并在结果中将另一关系各属性置为空(NULL)值。

      5. 半连接

      1. 除法的描述:

        设关系S的属性是关系R的属性的一部分,则 R ÷ S R \div S R÷S为这样一个关系:

        此关系的属性是由属于R但不属于S的所有属性组成$R \div S $ 的任一元组都是R中某元组的一部分。但必须符合下列要求,即任取属于 $R \div S $ 的一个元组 t,则t与S任一元组连接后,都为 R 中原有的元组。

      2. 除法的一般形式

        设关系R(X,Y)和S(Y,Z),其中X、Y、Z为关系的属性组,则:

        R ( X , Y ) ÷ S ( Y , Z ) = R ( X , Y ) ÷ ∏ Y ( S ) R(X,Y) \div S(Y, Z) = R(X, Y) \div \prod_Y(S) R(X,Y)÷S(Y,Z)=R(X,Y)÷Y(S)

    更多相关内容
  • 关系模型基本概念

    2020-12-14 18:32:20
    关系(Relation) D1 × D2 × ··· × Dn 的子集叫做在域D1,D2,···,Dn 上的关系,表示为 R(D1,D2,···,Dn...例如:老师的关系模型可以表示为教师(教师号,姓名,性别,年龄,职称,所在系)。 (值)域(d
  • 关系模型基本概念 1. 关系模型概述? 2. 什么是关系? 3. 关系模型中的完整性约束  1. 关系模型概述? 形象地说,一个关系(relation)就是一个Table  关系模型就是处理Table的,它由三个部分组成:  ...

    关系模型之基本概念

    1. 关系模型概述?

    2. 什么是关系?

    3. 关系模型中的完整性约束

     1. 关系模型概述?

    形象地说,一个关系(relation)就是一个Table

    关系模型就是处理Table的,它由三个部分组成:  描述DB各种数据的基本结构形式(Table/Relation)

                                                                                       描述Table与Table之间所可能发生的各种操作(关系运算)

                                                                                      描述这些操作所应遵循的约束条件(完整性约束)

    关系模型的三个要素): 基本结构:Relation/Table

                                          基本操作:

                                          完整性约束:实体完整性参照完整性用户自定义的完整性

    关系模型与关系数据库语言的关系

    关系运算:关系代数关系演算;关系演算:元组演算和域演算

    关系代数示例:基于集合的运算 。即:操作的对象及结果都是集合,是一次一集合(Set-at-a-time)的操作。 而非关系型的数据操作通常是一次一记录(Record-at-a-time)的操作

    元组演算示例:基于逻辑的运算                   域演算示例:基于示例的运算

    为什么要学习关系模型与关系数据库语言?


    什么是关系?

     

    关系的任意两个元组不能完全相同。

    表(Table)可能并不完全遵守此特性


    什么是域?   “列”的取值范围称为“域(Domain)”

    什么是笛卡尔积?  笛卡尔积是由n个域形成的所有可能的n-元组的集合

    什么是关系?      一组域D1 , D2 ,…, Dn的笛卡尔积的子集。笛卡尔积中具有某一方面意义的那些元组被称作一个关系

    注:由于关系的不同列可能来自同一个域,为区分,需要为每一列起一个名字,该名字即为属性名

    关系模式关系

    1. 同一关系模式下,可有很多的关系

    2. 关系模式是关系的结构, 关系是关系模式在某一时刻的数据

    3.关系模式是稳定的;而关系是某一时刻的值,是随时间可能变化的

    属性不可再分特性:又被称为关系第一范式

    候选码(Candidate Key)/候选键:关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码

    注:在一个关系中有可能有很多组候选码

    主码(Primary Key)/主键:当有多个候选码时,可以选定一个作为主码

    主属性与非主属性:包含在任何一个候选码中的属性被称作主属性,而其他属性被称作非主属性

    注:最简单的,候选码只包含一个属性 ;最极端的,所有属性构成这个关系的候选码,称为全码(All-Key)。

    外码(Foreign Key)/外键:关系R中的一个属性组,它不是R的候选码,但它与另一个关系S的候选码相对应,则称这个属性组为R的外码或外键。

    注:两个关系通常是靠外码连接起来的。



    关系模型中的完整性?

    实体完整性:关系的主码中的属性值不能为空值

    参照完整性:如果关系R1的外码Fk与关系R2的主 码Pk相对应,则R1中的每一个元组的 Fk值或者等于R2 中某个元组的Pk 值, 或者为空值

    用户自定义完整性:用户针对具体的应用环境定义的完整性约束条件

    注:实体完整性和参照完整性由DBMS系统自动支持


    现有如下关系:患者(患者编号,患者姓名,性别,出生日期),医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期)。其中,“医疗”关系中的外键是_______?                   患者编号

    展开全文
  • 数据库 关系模型基本概念

    千次阅读 2020-03-03 14:23:51
    关系模型中:关系、目或度、关系模式、域、元组、属性、分量、主码、外码等名词的解释。

    关系(Relation

    D1 × D2 × ··· × Dn 的子集叫做在域D1,D2,···,Dn 上的关系,表示为 R(D1,D2,···,Dn ),其中R就是关系名,n就是目或度。
    一个关系对应一张二维表,二维表就是关系名。

    • 例如,下图中的整个二维表的值就是一个关系
      01

    目 或 度(degree

    二维表关系R(D1,D2,···,Dn )中的 n 就是关系的

    关系模式(Relation Schema

    在二维表中的行定义,即对关系的描述称为关系模式。

    • 一般表示为(属性1,属性2,…,属性n)
    • 例如:老师的关系模型可以表示为教师(教师号,姓名,性别,年龄,职称,所在系)。

    (值)域(domain

    域是一组具有相同数据类型的值的集合。
    二维表中每列对应一个域。

    • 表述的是属性值的取值范围为值域。同一种类型的数据集合,都是某一个事物的值的集合。
    • 例如:自然数、整数、{男,女}、不大于10的正整数等。
    • 例如:上述关系中的D1 = 学号集合 = {S3001,S3002,S4001}; D2 = 姓名集合 = {张明,李静,赵丽} 等就是域。

    元组(tuple

    笛卡尔积中每一个元素(d1,d2,···,dn),叫作一个n元组(n-tuple)或简称元组。
    二维表中每行对应一个元组。
    关系是一张表, 表中的每行(即数据库中的每条记录)就是一个元组;

    • 在二维表里,元组也称为行。
    • 例如:关系中的某一行
      02

    属性(attribute

    在二维表中为了区分不同的域而对每列取一个名字,称为属性。
    属性的个数称为关系目或度,即 n目关系必有n个属性。
    列的值称为属性值;

    • 例如:二维表中的学号、姓名、性别等都是属性。
      03

    分量(component

    元素中每一个值 di 都叫做一个分量
    为每一行对应的列的属性值,即元组中的一个属性值。

    • 例如:关系中某一行中的S3001、张明、男、外语等等。

    候选码 (候选建)(candidate key

    若关系中的某一属性组的值能唯一地标识一个元组,而其子集不能,则称该属性组为候选码

    • 例如:在选课表中,只有属性组“学号”和“课程号”才能唯一地标识一个元组,则候选键为(学号,课程号)。
      04

    主码(primary key

    在一个关系的若干候选码中指定一个用来唯一标识该关系的元组,则称这个被指定的候选码称为主关键字,或简称为主键、关键字、主码
    主码不一定只有一个,但是一定要有。

    • 在有多个候选码的情况下,主码是由人为选择的。

    主属性 & 非主属性(prime attribute & non-prime attribute

    关系中包含在任何一个候选码中的属性称为主属性,不包含在任何一个候选码中的属性为非主属性非码属性(non-key attribute

    • 例如关系中的学号、课程号就是主属性;而性别、年龄就是非主属性或非码属性。

      01

    全码(all-key

    在最极端条件下,关系模式中的所有属性都是这个关系模式的候选码,称为全码

    外码(foreign key)

    一个关系R中的一个属性是另外一个关系F中的主码,则关系R中的这个属性称为外码。

    • 有两个实体:其中加粗的属性是主码。
    • 学生(学号,姓名,性别,专业号);专业(专业号,专业名)
    • 则对专业表来说:专业号是专业表的主码;
    • 对学生表来说:专业号是学生表的外码;学号是学生表的主码;

    笛卡尔积(cartesian product

    笛卡尔积是域上的一种集合运算。

    • 给定一组域D1,D2,···,Dn,允许其中的某些域是相同的,D1,D2,···,Dn的笛卡尔积为:D1 × D2 × ··· × Dn = {(d1,d2,···,dn)| di ∈ Di,i = 1,2,···,n}

    资料参考

    展开全文
  • 关系模式基本概念

    千次阅读 2020-04-15 14:46:11
    为了更好地存储数据,需要将现实世界的事物及其关系进行层层抽象,从而得到数据模型。...关系模型概念 域(domain): 笛卡尔积(Cartesian Product): 基数 关系(Relation):R表示关系的名称,n...

    为了更好地存储数据,需要将现实世界的事物及其关系进行层层抽象,从而得到数据模型。使用关系数据模型的数据库系统是现在的主流数据库系统。数据模型是数据库的框架,该框架描述了数据及其联系的组织方式、表达方式和存取路径。

    相关术语如下:

     

    关系模型的概念

    (domain):

    笛卡尔积(Cartesian Product):

    基数

    关系(Relation):R表示关系的名称,n是关系的目或度(degree)

    关系模式:简记为:R(U)

    注:关系代数的运算对象和运算结果都是关系。

    概念框图

    参考资料

    [1] 数据库原理及应用教程  第4版  微课版  书号:978-7-115-45700-4

    展开全文
  • 数据库关系模型基本概念

    千次阅读 2020-09-25 23:01:05
    1.关系模型以表为基本结构 2.包括了基本的操作:并,差,广义积,选择,投影 以及拓展的操作:交,连接,除 3.还有完整性约束:实体完整性,参照完整性,用户自定义完整性。 1.什么是关系?什么是表? 关系是所有域...
  • 3.1 关系模型概述 1、关系模型的提出 2、关系模型的研究内容 一个关系就是一个Table 关系模型就是处理Table的,由三部分组成: 描述DB各种数据的基本结构形式(Table/Relation) 描述Table与Table之间所可能发生的...
  • 一.定义并解释概念模型术语(实体,实体型,实体集,实体之间的联系) 1.实体:客观存在并可相互区别的事物...关系模型概念以及解释关系,属性,域,元组,码,分量,关系模式概念。 1.关系模型:建立在严格的数学
  • 数据库原理 03关系模型基本概念

    千次阅读 2020-02-03 21:59:50
    关系模型概述 什么是关系 关系模型的完整性约束 重点与难点 一组概念的区分: 围绕关系的相关概念:域、笛卡儿积、关系、关系...关系模型就是处理table的,他由三部分组成:包括描述数据库各种关系的基本结构...
  • (1)关系模型的三个基本概念 关系模型的三个要素: 1)基本结构: 关系/table2 2)基本操作: 关系操作 3)完整性约束: 实体完整性(关系的主码的属性值不能为空(对主码而言)) 参照完整性(如果关系...
  • 关系模型基本概念

    千次阅读 2020-08-31 14:56:21
    4.学习关系模型中的约束 第一个目的 上一篇文章我们对关系模型做了简单的理解,说关系模型其实就是定义表格的模板,当然这个并不完整,这里给出一个更加准确的概念关系模型由下面三部分组成: 1.描述了表格的基本...
  • 关系模型基本概念

    千次阅读 2018-09-03 13:11:37
    关系模型概述 关系模型研究什么 形象地说,一个关系(relation)就是一个Table 关系模型就是处理Table的,它由三个部分组成: - 描述DB各种数据的基本结构形式(Table/Relation) - 描述Table与Table之间所可能...
  • 数据库基本概念

    千次阅读 2021-03-04 00:11:06
    数据抽象:物理抽象、概念抽象、视图级抽象,内模式模式、外模式模型是对现实世界的抽象,在数据库技术,我们用数据模型概念描述数据库的结构和语义,对现实世界的数据进行抽象。从现实世界的信息到数据库存储...
  • 数据库MySQL关系模型基本概念

    万次阅读 多人点赞 2019-01-31 16:11:44
    1.什么是关系模型 1.1关系模型研究什么 一个关系(relation)就是一个Table 关系模型就是处理Table的,它由三个部分组成: 描述DB各种数据的基本结构形式(Table/Relation) 描述Table与Table之间所有可能发生的...
  • 概念模型与关系模型和关系规范化

    万次阅读 多人点赞 2017-05-20 16:18:34
    》概念模型  概念模型用于信息世界的建模,是实现现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是...》信息世界基本概念  1、 实体(Entity)  客观存在并可相互区别
  • 关系模型基本思想;关系模型由三部分组成 关系关系操作关系完整性 关系 二维表又称为关系表名又称为关系名如下表;一个关系对应一张表;关系操作 关系操作并交差选择投影连接等其中选择投影及连接是最基本的关系操作 ...
  • 数据库-关系数据库基本概念

    千次阅读 2019-04-10 21:01:06
    关系模型的数据结构虽然简单但是能够表达丰富的语义,描述出现实世界的实体以及实体间的各种联系。 关系模型是建立在集合代数的基础上的,这里从集合论角度给出关系数据结构的形式化定义。 1.域(domain) 定义...
  • 1.2 数据模型 数据模型是对现实世界数据特征的抽象。 通俗地讲数据模型就是现实...逻辑模型主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系模型、半结构化数据模型等。 按计算机系统的观点对数据建
  • 4 5最小费用最大流问题 管理运尊学 管理运尊学 PAGE # 管理运尊学 管理运尊学 PAGE # 1 与网络的基本概念 1 与网络的基本概念 管理运尊学 管理运尊学 PAGE # 图论中图是由点和边构成可以反映一些对象之间的关系 ...
  • 模型基本概念 1?UML?的建筑块 组成?UML?有三种基本的建筑块 1事物Things 2关系Relationships 3图Diagrams 事物是?UML?重要的组成部分关系把事物紧密联系在一起图是很多有相互相关 的事物的组 1.1?UML?的事物 UML...
  • 数据库基本知识与关系模型

    千次阅读 2020-04-25 11:52:30
    Database:相互之间有关联关系的Table的集合。 2、什么是数据库管理系统DBMS? DBMS:管理数据库的一种系统软件。如SQLServer、MySQL、Oracle (1) 从用户角度看DBMS的功能 数据库定义语言(DDL:Data...
  • 关系数据库的基本概念

    千次阅读 2016-09-07 18:47:59
     在现实世界,要描述一个实物常常取若干特征来表示,这些特征称为 属性(Attribute) 。 例如,用学号、姓名、性别、系别、年龄和籍贯等来描述学生。每个属性的取值范围对应一个值的集合,称为该属性的 域...
  • 层次模型,网状模型,关系模型的优缺点总结
  • 概念模型和关系模型

    千次阅读 2017-03-14 19:47:09
    ER模型基本元素是:实体、联系和属性 实体:是一个数据对象,指应用可以区别的客观存在的事物。(ER模型中的实体往往是指实体集) 实体集:指同一类实体构成的集合 实体用方框表示表示,方框内注明实体的命名。 ...
  • 关系模型概念,定义

    万次阅读 多人点赞 2018-05-02 20:37:51
    (1)关系模型与非关系模型不同,它是建立在严格的数学概念的基础上的。(2)关系模型概念单一,无论实体还是实体之间的联系都用关系表示,操作的对象个操作的结果都是关系,所以其数据结构简单、清晰、用户易懂易用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 522,510
精华内容 209,004
关键字:

关系模型中的基本概念