首頁 >資料庫 >mysql教程 >关系数据库

关系数据库

WBOY
WBOY原創
2016-06-07 15:47:241267瀏覽

域: 一组具有相同数据类型的的集合 ,例如,整数、实数、 关系: D1×D2×…×Dn的子集叫做在域D1,D2,…,Dn上的关系 属性: 每列起一个名字,每列就是一个属性 候选码:关系中的某一属性 组 的能唯一地标识一个元组,该属性 组 为候选码 ,K是RU,F中的属

域 :      一组具有相同数据类型的值的集合 ,例如,整数、实数、

关系:  D1×D2×…×Dn的子集叫做在域D1,D2,…,Dn上的关系

属性: 每列起一个名字,每列就是一个属性

候选码:关系中的某一属性 组 的值能唯一地标识一个元组,该属性 组 为候选码 ,K是R中的属性或属性组合 如果K确定U,则K为R的候选码

主码:若一个关系有多个候选码,则选定其中一个为主码

范式:规范化的关系

关系模式简记为: R(U)或R(A1,A2,...,An)  ,R关系名,U属性名集合,A1,A2,...An为属性名

元组:元组表中的每行(即数据库中的每条记录)就是一个元组

分量:笛卡尔积元素(d1,d2,...d3)中每一个值di叫做一个分量

第一范式:每一个分量是不可分的数据项

完全函数依赖:X Y是U的子集,对于如果X->Y(X确定Y),并且对于X的任何一个真子集X'都有 X‘不->Y,则称Y对X完全函数依赖

主属性:包含在候选码中的一个属性

 

超码:如果K->R,则K是R的超码

 

第一范式(1NF)无重复的列

第二范式(2NF)属性完全依赖于主键。

要求数据库表中的每个实例或行必须可以被唯一地区分。

 

第三范式(3NF)属性不依赖于其它非主属性。

要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在的员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。

 

 

 

第三范式(3NF)实例分析

  接着看上面的学生表Student(学号,姓名, 年龄,性别,系别,系办地址、系办电话),关键字为单一关键字"学号",因为存在如下决定关系:

  (学号)→ (姓名, 年龄,性别,系别,系办地址、系办电话)

  但是还存在下面的决定关系

  (学号) → (所在系办)→(系办地点, 系办电话)

  即存在非关键字段"系办地点"、"系办电话"对关键字段"学号"的传递函数依赖。

  把表分为如下两个表就可以满足第三范式了:

  学生:(学号, 姓名, 年龄, 性别,系别);

  系别:(系别, 系办地址、系办电话)。 

 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn