二 .关系数据库

关系数据库概述

系统而严格的提出关系模型的是美国IBM公司的E.F.Codd

  1. 1970年提出关系数据模型
  2. E.F.Codd在美国计算机学会会刊《Communications of the ACM》发表了题为"A Relational Model of Data for shared Data Banks"
  3. 之后,提出了关系代数和关系演算的概念
  4. 1972年提出了关系的第一、第二、第三范式
  5. 1974年提出了关系的BC范式

关系数据模型

关系数据结构

  1. 表(Table)

也称为关系,是一个二维的数据结构。它由表名、构成表的各个列、及若干行数据组成

  1. 关系(Relation)

一个关系逻辑上对应一张二维表,可以为每个关系取一个名称进行标识

  1. 列(Column)

字段(Field)或属性(Attribute)

  1. 属性(Attribute)

表中的一列即为一个属性,表中属性的个数称为关系的元或度

  1. 行(Row)

也称做元组(Tuple)或记录(Record)

  1. 元组(Tuple)

表中的一行

  1. 分量(Component)

元组中的一个属性值

  1. 码或键(Key)
  2. 超码或超键(Super Key)

关系的一个码移去某个属性,它仍然是这个关系的码

  1. 候选码或候选键(Candidate Key)

关系的一个码或键中,不能从中移去任意一个属性

  1. 主码或主键(Primary Key)

在一个关系的若干候选码或候选键中制定一个用来唯一标识关系的元组

  1. 全码或全键(All-Key)

一个关系模式中所有属性集合是这个关系的主码或主键

  1. 主属性(Primary Atribute)和非主属性(NonPrimary Attribute)

关系中包含再任意一个候选码的属性称为主属性或码属性,不包含反之

  1. 外码或外键(Foreign Key)

当关系中的某个属性不是这个关系的主码或候选码,而是另一个关系的主码

  1. 参照关系(Referencing Relation)和被参照关系(Referenced Relation)

参照关系也称为从关系,被参照关系也称为主关系,它们是指以外码相关联的二个关系,以外码作为主码的关系称为被参照关系,外码所在的关系称为参照关系

  1. 域(Domain)

取值范围

  1. 数据类型(Data Type)
  2. 关系模式(Relation Schema)

在关系数据库中,关系模式是型,关系是值

  1. 关系数据库(Relation Database)

关系数据库是以关系模型作为数据的逻辑模型,并采用关系作为数据组织方式的一类数据库,其数据库操作建立在关系代数的基础上,在一个给定的应用领域中,所有关系的集合构成一个关系数据库

- 每一个属性都是不可分解的

- 每一个关系仅仅有一个关系模式

- 每一个关系模式中的属性必须命名

- 同一个关系中不允许出现候选码或候选键值完全相同的元组

- 在关系中元组的顺序可以任意交换

- 在关系中属性的顺序可以任意交换

关系操作集合

  1. 基本的关系操作

查询(Query)、插入(Insert)、删除(Delete)、修改(Update)

查询操作又可以分为选择、投影、连接、除、并、差、交、笛卡尔积等,关系操作的特点是集合的操作方式,即操作的对象和结果都是集合

  1. 关系数据语言的分类

代数方式和逻辑方式,代数方式主要有关系代数。它是通过对关系的操作来表达查询要求的方式;逻辑当时主要有关系演算、它是用谓词来表达查询要求的方式

  1. 关系代数
- 传统的集合运算

    - 并(UNION)
    - 差(DIFFERENCE)
    - 交(INTERSECTION)
    - 笛卡尔积(CARTESIAN PRODUCT)
    
- 专门的关系运算
    
    - 选择(SELECT)
        > 行变
    - 投影(PROJECTION)
        > 列变
    - 连接(JOIN)
    - 除(DICISION)

关系的完整性约束

  1. 实体完整性约束(Entity Intergrity Constraint)

实体完整性约束是指关系的主属性,即主码的组成不能为空,也就是关系的主属性不能是空值NULL.

  1. 参照完整性约束(Referential Intergrity Constraint)
  2. 用户定义完整性约束(User-defined Integrity Constraint)

用户定义的完整性约束是针对某一应用环境的完整性约束条件,它反映了某一具体应用所涉及的数据应满足的条件

  1. 关系数据完整性约束的检验

对数据执行插入、删除、和更新操作


关系数据库的规范化理论

关系模式中可能存在的冗余和异常问题

  1. 数据冗余
  2. 更新异常
  3. 插入异常
  4. 删除异常

函数依赖与关键字

如果对于R中属性X的每一个值,R中的属性Y只有唯一的值与之对应,则称为X函数决定Y或称为Y函数依赖与X,记做X->Y

举个小例子

身份证号->性别
身份证号->姓名
身份证号->年龄
  1. 完全函数依赖

设R为任意给定关系,X、Y为其属性集,若X->Y,且对与X的任意真子集都有X不能决定Y,则称为Y完全依赖X


sno, cno, cname, age (学号、课程号、课程名字,成绩)

(sno,cno)->age 为完全依赖

其中sno、cno单独拿出来,不能决定age

  1. 部分函数依赖
  2. 传递函数依赖

X->Y,Y不决定X,Y->Z,则X->Z,称为Z传递函数依赖于X

范式与关系规范化过程

满足最低要求的称为第一范式,INF,这是最基本的范式

  1. 第一范式

不可再分

  1. 第二范式

所有非主属性都完全函数依赖与候选关键字

  1. 第三范式

每一个非主属性都不传递函数依赖与候选关键字


关系规范化理论的应用

关系规范化理论主要应用于数据库设计中的概念设计阶段

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,444评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,421评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,363评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,460评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,502评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,511评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,280评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,736评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,014评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,190评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,848评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,531评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,159评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,411评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,067评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,078评论 2 352