关系模型研究什么?

关系模型就是处理Table的,它由三个部分组成:

1:描述DB各种数据的基本结构形式

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

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

就是要学习:Table如何描述,有哪些操作,结果是什么,有哪些约束等.

关系模型的三个要素

1 基本结构:Relation/Table

2 基本操作:Relation Operator(各种运算操作)

3 完整性约束:实现完整性,参照完整性和用户自定义完整性

候选码/候选键

关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性吗,它就不具有这一性质了,这样的属性组称为候选码

例如:"学生(S#,Sname,Sage,Sclass)",S#就是一个候选码,在此关系中,任何两个元组的S#是一定不同的,而这两个元组的Sname,Sage,Sclass都可能相同,所有S#是候选码。

有时,关系中有很多组候选码,例如:

学生(S#,Sname,Sage,Sclass,Saddress)

其中属性S#是候选码,属性组(Sname,Saddress)也是候选码(同名同地址的两个同学是不存在的)

主码/主键

当有多个候选码是,可以选定一个作为主码

当DBMS以主码为主要线索管理关系中的各个元组

主属性与非主属性

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

最简单的,候选码只包含一个属性

最极端的,所有属性构成这个关系的候选码,称为全码

例如:关系“教师授课”(T#,C#)中的候选码(T#,C#)就是全码

外码/外键

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

例如:“合同”关系中的客户号不是候选码,但确实外码。因它与“客户”关系中的候选码“客户号”相对应。

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

关系模型中的完整性
实体完整性

关系的主码中的属性值不能为空值;

意义:关系中的元组对应到现实世界相互之间可区分的一个个个体,这些个体是通过主码来唯一标识的;若主码为空。则出现不可标识的个体,这是不容许的

空值的含义

空值:不知道、不存在或无意义的值;

在进行关系操作是,有时关系中的某属性值是当前填不上的,比如档案中有“生日不详”、“下落不明”、“日程尚待公布”等,需要空值来代替,关系模型中用"?"来表征。

数据库中有了空值,会影响许多方面,如影响聚集函数运算的正确性,不能参与算数、比较或逻辑运算等。

有空值的时候是需要特殊处理的,要特别注意。

参照完整性

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

意义:如果关系R1的年某个元组t1参照了关系R2的某个元组t2,则t2必须存在。

用户自定义完整性

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

如S#要求是10为整数,其中前四位为年度,当前年度与他们的差必须在4以内。

DBMS对关系完整性的支持

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

DBMS系统通常提供如下机制:

1 它使用户可以自定义有关完整性约束条件

2 当有更新操作发生是,DBMS将自动按照完整性约束条件检验更新操作的正确,即是否符合用户自定义的完整性

数据库:关系模型基本介绍相关推荐

  1. ECMALL数据库关系模型的实现

    2019独角兽企业重金招聘Python工程师标准>>> 所谓模型,则是一个一个的数据实体,换句话说就是一个数据表,你可以基于这个模 型,调用model.base.php中的数据库操作 ...

  2. 第2章 数据库关系模型---数据库原理及应用

    目录 第2章        数据库关系模型 本章要求: 1.关系模型的基本概念 关系数据模型-现有主流DBMS支持的逻辑模型 域(Domain):相同数据类型的集合 关系模式:关系名和属性 关系实例: ...

  3. 思辨领域模型-- DDD≠数据库关系模型

    Eric Evans的<领域驱动设计>问世已经14年之久,到今天几乎所有业务团队都或多或少有涉及DDD.然而如果较真会发现,认真遵循DDD设计原则的团队仍是少数,在多数团队的现都是:**领 ...

  4. 【MySQL】使用Visio绘制数据库关系模型图

    使用Visio绘制数据库关系模型图 1 新建项目 文件-新建–软件和数据库-数据库模型图 点击后,出现如下界面: 2 绘制 左侧"实体关系"中将"实体"形状拖放 ...

  5. 数据库关系模型与关系运算---2022.2.13

    关于外模式,模式,内模式的理解 可以看到用不同的语句进行表示: 关系的性质 概念模式/内模式映射是物理独立性的关键: 外模式/概念模式映射就是逻辑独立性的关键 候选键 (最小组成的超键) 关系中的一个 ...

  6. 数据库关系模型的三类完整性约束

    关系模型中有三类完整性约束,分别是:实体完整性,参照完整性,用户定义完整性 实体完整性 定义:实体完整性是用于保证关系数据库中每个元组都是可区分的,唯一的. 它的意思就是说数据表中每一行都应该有办法将 ...

  7. 数据库 ---- 关系模型

    在关系模型中,操作的对象和结果都是二维表,关系模型是目前最流行的数据库模型.支持关系模型的数据库管理系统称为关系数据库管理系统,Access就是一种关系数据库管理系统. 1.基本术语 (1)关系(Re ...

  8. 数据库关系模型和关系运算[姊妹篇.第三弹]

    随着ORM框架的日益流行,如今的码农们直接操作数据库语法的越来越少了,一顿orm语法操作猛如虎,一遇问题问题便靓仔语塞.这种情况不在少数,就如我的工作中,我所知道的同事和实习生当中,就有不少人非常喜欢 ...

  9. 数据库关系模型有哪三类完整性约束?

    一.实体完整性 实体完整性要求每个表都有唯一标识符,每一个表中的主键字段不能为空或者重复的值. 二.参照完整性 参照完整性要求关系中不允许引用不存在的实体.设定相应的更新删除插入规则来更新参考表. 例 ...

最新文章

  1. Retrofit 2.0
  2. 实例化bean的三种方式
  3. Ubuntu 16.04 安装网易云音乐
  4. Markdown 使用教程
  5. 学生电脑哪个牌子好_电脑桌哪个牌子好?如何选购电脑桌?2020年值得选购的电脑桌品牌推荐...
  6. 荣耀v30鸿蒙5g是什么版本,标配双模5G全国通手机 荣耀V30马上就要来了
  7. 将一个对象转化为字符串形式的默认方法
  8. mysqlplus 字段验证策略fieldStrategy
  9. CAM365直播预告|带您全方位了解新一代CAM工具软件
  10. okcc呼叫中心外呼系统使用教程
  11. 黑马程序员————银行业务调度系统
  12. busboy文件上传遇到的坑,已解决
  13. html的div背景,html div背景到底是什么颜色呢?
  14. Python爬虫——使用三种方法来爬取酷狗音乐的TOP榜
  15. Bootstrap+web+Idea实现登录页面(含验证码)
  16. PAT(甲级)渡劫(一)-Public Bike Management
  17. opencore 启动总是在win_黑苹果OpenCore引导总结
  18. 像老熊一样学习oracle
  19. 使用Jwt验证登录demo
  20. mmyolo训练yolov5~ppyoloe

热门文章

  1. Intel和AMD处理器各有什么特点?该如何选择?
  2. 组合导航中常见的英文单词、短语翻译
  3. [原创]分析某app直播地址的过程
  4. php rewind函数,函数rewind的作用是什么
  5. 如何用U盘进行装机?
  6. QT自定义控件之车辆远近光灯
  7. 筱筱看博客(函数柯里化、节流防抖)
  8. java xml格式化_使用java将xml格式化
  9. Cocos2d-js cc.director介绍
  10. 期货反向跟单犯法吗?