zoukankan      html  css  js  c++  java
  • 数据库建表三范式简介

    为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。

    在实际开发中最为常见的设计范式有三个:

    一范式1NF(确保每列保持原子性)
    1、    数据库表的每一行都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。
    2、    表的每一行包含一个实例的信息。
     
    第二范式2NF
    1、    要求数据库表中的每个实例或行必须是唯一的。为实现区分,通常需要为表加一个列,以存储各个实例的唯一标识(即主键)。
    2、    实体的属性完全依赖于主关键字。所谓完全依赖指不能存在仅依赖主关键字一部分的属性。如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个 新的实体,新实体与原实体之间是一对多的关系。为实现区分通常需要为表加上一个列,以存储各个实例的唯一标识。总之第二范式就是非主属性非部分依赖于主关 键字。
     
    第三范式3NF

    一个数据库表中不包含已在其他表中已包含的非主关键字信息。例如存在一个部门信息表,其中每个部门有部门编号DEPT_ID、部门名称、部门简介等信息。那么在员工信息表中列出的部门编号DEPT_ID后,就不能再有关于部门的其他信息,否则就会造成数据冗余

  • 相关阅读:
    python迭代器
    初识html
    跨域(jsonp)方法
    闭包
    pycharm软件配置
    插槽slot
    git常用操作
    在mac中使用Charles抓包操作
    防止网页被嵌入框架
    H5唤起APP
  • 原文地址:https://www.cnblogs.com/workerman/p/4665088.html
Copyright © 2011-2022 走看看