zoukankan      html  css  js  c++  java
  • 数据库三范式是什么?

    第一范式( 1NF): 字段具有原子性,不可再分。 所有关系型数据库系统都满足第一范式)
    数据库表中的字段都是单一属性的, 不可再分。 例如, 姓名字段, 其中的姓和名必须作为一
    个整体, 无法区分哪部分是姓, 哪部分是名, 如果要区分出姓和名, 必须设计成两个独立的
    字段。
    第二范式( 2NF):
    第二范式( 2NF) 是在第一范式( 1NF) 的基础上建立起来的, 即满足第二范式( 2NF) 必
    须先满足第一范式( 1NF)。
    要求数据库表中的每个实例或行必须可以被惟一地区分。 通常需要为表加上一个列, 以存储
    各个实例的惟一标识。 这个惟一属性列被称为主关键字或主键。
    第二范式( 2NF) 要求实体的属性完全依赖于主关键字。 所谓完全依赖是指不能存在仅依赖
    主关键字一部分的属性, 如果存在, 那么这个属性和主关键字的这一部分应该分离出来形成
    一个新的实体, 新实体与原实体之间是一对多的关系。为实现区分通常需要为表加上一个列,
    以存储各个实例的惟一标识。 简而言之, 第二范式就是非主属性非部分依赖于主关键字。
    第三范式的要求如下:
    满足第三范式( 3NF) 必须先满足第二范式( 2NF)。 简而言之, 第三范式( 3NF) 要求一个
    数据库表中不包含已在其它表中已包含的非主关键字信息。
    所以第三范式具有如下特征:
    1, 每一列只有一个值
    2, 每一行都能区分。
    3, 每一个表都不包含其他表已经包含的非主关键字信息。
    例如, 帖子表中只能出现发帖人的 id, 而不能出现发帖人的 id, 还同时出现发帖人姓名,
    否则, 只要出现同一发帖人 id 的所有记录, 它们中的姓名部分都必须严格保持一致, 这就
    是数据冗余。

  • 相关阅读:
    Android广播接收器和Activity间传递数据
    Android广播接收器里弹出对话框
    Android本地广播
    setSupportActionBar()方法报错
    exec使用小计
    关于NSA的EternalBlue(永恒之蓝) ms17-010漏洞利用
    20154312 曾林 ExpFinal CTF Writeup
    20154312 曾林 EXP9 Web安全基础
    20154312 曾林 Exp8 web基础
    20154312 曾林 EXP7 网络欺诈防范
  • 原文地址:https://www.cnblogs.com/zhaideyou/p/5932220.html
Copyright © 2011-2022 走看看