欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

关系数据库

程序员文章站 2022-06-16 16:04:01
...

域: 一组具有相同数据类型的的集合 ,例如,整数、实数、 关系: 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(学号,姓名, 年龄,性别,系别,系办地址、系办电话),关键字为单一关键字"学号",因为存在如下决定关系:

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

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

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

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

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

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

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