当前位置:文档之家› ①数据描述,关系,函数依赖

①数据描述,关系,函数依赖

数据管理阶段:手工管理阶段、文件系统阶段、数据库管理系统阶段。

三级模式:外模式、模式、内模式。

二级映像:
①外模式—模式:通过映射建立对应关系,模式变时只需修改映射关系,
可使外模式保持不变。

②模式—内模式:通过映射建立对应关系,模式变时只需修改映射关系,
可使模式保持不变。

数据描述
1)概念数据模型概念模型
抽象:通过抓取事物的主要特征来表达事物的过程。

①实体:Entity,现实世界中的客观事物,是现实世界中任何可区分、可识别的事物。

②属性:Proprety 实体的特性。

③实体关系:实体之间的对应关系:一对一、一对多、多对多。

④※表达(E —R)Entity—Relation
2)逻辑数据模型
层次型:条件:①只能有一个根节点(无父节点)
②其他节点只能有一个父节点
网状型:条件:①只能有一个根节点(无父节点)
②其他节点可以有一个或者多个父节点
关系型:关系:二维表
元组:表中的行
属性:表中的列
对象型:
关系概念:
⑴域:具有相同特征的数据集合(取值范围)
⑵笛卡尔积:定义在一组域上的集合
例:D1×D2×D3={(d1,d2,.....dn)|di(-Di,1<=n<=n,n>=1}
D1={男,女} D2={张三,李四} D3={20,18,19}
D1×D2×D3={(男,张三,20),(男,张三,18),(男,张三,19),
(男,李四,20),(男,李四,18),(男,李四,19),
(女,张三,20),(女,张三,18),(女,张三,19),
(女,李四,20),(女,李四,18),(女,李四,19)}
⑶关系:是笛卡尔积的一个子集,若笛卡尔积有n个域,则该笛卡尔积、子集称为n元关系(集合论)
⑷关键字(码):能唯一区分确定不同元组的属性或属性集合是该关系的一个关键字。

①超码:能唯一识别每个元组的属性或属性组
②候选码:能唯一识别每个元组的最少属性或属性组
③主码:从候选码中选出一个作为主码
④备用码:除了主码之外的候选码
⑤外码:关系R1中的属性或者属性组在另一个关系R2中是主码,则称该属性或属性组是R1的外码。

例:
①超码②候选码③主码④备用码⑤外码
候选码:身份证号、学号
若身份证号为主码,则学号为备用码
超码(候选码+任一属性):身份证号+性别
⑸主属性:存在于候选码中的属性。

关系完整性:
①实体完整性:主码不能为空。

②域完整性:对列表的规范,限制列的数据类型和取值范围。

③参照完整性:外码为空,或者被参照的主码值。

④用户定义完整性:用户定义的——了解
*********************************************************************
关系运算
********************************************************************* ⑴传统运算:并运算(Union)、交运算(Intersection)、差运算(Difference)、笛卡尔积(Cartesion Product)
⑵特殊运算:选择(Selection)、投影(Projection)、连接(Join)、除(Division)
⑴并运算:R和S具有相同的结构,并后仍是一个关系,包含R和S的所有元组,不重复的,重复的只能出现一次。

⑵交运算:R和S具有相同的结构,交后仍是一个关系,包含R和S所有的元组。

⑶差运算:差 R中出现,S中不出现。

例:R:
S:
并{(001,李一,20),(002,张二,21),(003,王三,18)}
交{(001,李一,20)}
差{(002,张二,21)} 例:R :
S:
R :{(001 S :{(003,计算机),(001,管理学院)} R×S
⑷选择:从一个关系中选择出满足条件的所有元组 δF(t)(R )={t|t ∈R ∩F (t )=true} δ
性别=女(R )
学号 姓名 性别 001 张三 男 002 李四 女
⑸投影:从一个关系中选取若干属性形成的性关系(他还是属于集合) ∏(A|R )={t.A|t ∈R} ∏姓名(R ):
∏性别(R ):
⑹连接:把两个关系相应属性作比较,包含R 和S 笛卡尔积的一个子集 R ∞R.A θS.B S=δR.A θ
S.B (R×S)
学生表S1:
学生表S2:
①等值连接:S1∞s1.学号=s2.学号S2

T1∞T1.B>T2.B T2:
③自然连接: natural join
例1:S1∞S2 自动匹配相同属性,结果不包含重复属性
例2R1∞R2:
函数依赖和(※)关系规范式
********************************************************************* ⑴函数依赖:函数依赖研究的是一个关系中属性之间的相互依赖关系
①一般函数依赖:设一个关系,R(U) X和Y是U上的一个子集,对子元组中X上的每个值都有Y的一个唯一值对应,则X和Y存在函数依赖关系,称X函数决定Y,也称Y函数依赖X,记作X→Y
②平凡与非平凡函数依赖:设一个关系,R(U) X和Y是U上的一个子集,存在X→Y,且X不包含Y,则称X→Y为非平凡函数依赖,否则为非平凡的
③※部分和完全函数依赖:设一个关系,R(U) X和Y是U上的一个子集,若X→Y,同时X上的一个真子集,Xˊ也能函数决定Y,X→Y,则称X部分函数决定Y,若称Y部分函数依赖X,记作X→pY,否则是完全依赖。

完全依赖一定是非平凡依赖
④※传递函数依赖;设一个关系,R(U) X和Y是U上的一个子集,若存在X 完全依赖Y,Y完全依赖Z,且Y不函数依赖Y,则存在X→Z,称传递函数依赖。

⑤函数依赖增广性原则:X→Y,则XZ→YZ
⑥函数依赖合并性原则:X→Y,X→Z,则X→YZ
⑦最小函数依赖:X函数完全依赖Y,同时Y是单属性。

例:成绩(学号,姓名,课程号,课程名,分数)
最小函数依赖集={学号→姓名,课程号→课程名,(学号,课程号)→分数}
⑵关系规范化
第一范式:1nf(first normal form)关系中的属性不可再分
第二范式:2nf 满足1nf,不存在部分依赖【消除部分依赖】
第三范式:3nf 满足2nf,不存在传递依赖【消除传递依赖】
Student(学号,姓名)
Course(课程号,课程名)消除部分依赖 Score(学号,课程号,成绩,教师号)(学号,课程号)→教师号
教师号→教师名消除传递依赖 Score(学号,课程号,成绩)Teacher(教师号,教师名)。

相关主题