zoukankan      html  css  js  c++  java
  • 数据库三范式速记

    第一范式:

    数据库表中的所有字段值都是不可分解的原子值。

    第二范式:

    确保表中的每列都和主键相关也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。

    第三范式:

    确保每列都和主键列直接相关,而不是间接相关。

    否则将产生数据冗余:

    MEMBER_BOOK(MemNo, Book_Id, DueDate, Mname, City, CallNo, Title)
                      PK

    QQ截图20121216134718

    很明显,上述关系存在数据冗余,因为数据冗余,会导致以下更新异常:

    a. 修改异常 如果修改一个人所在的城市,那就要修改多处,比如修改Susan的City,如果修改时漏了一项将会导致数据一个人同时在两地居住的情况。

    b. 插入异常  如果有新成员加入,但他没借书,因为和书籍相关的字段有不能为空的,所以必须等他借了书之后才能插入。

    c. 删除异常  如果有个成员,只借了一本书,然后去还书,这个成员会从这个表中消失。但其实他还是个成员,只不过没借书而已。

    总想把每一篇文章精雕细琢之后以完美的面貌示人,就像演员在演出前都要彩排,总想准备好之后再去展现精彩的一面,但人生的每一刻都是精彩的,就算现在还不完善也要发出来,作为自己一直在学习的一种见证。
  • 相关阅读:
    树世界
    清空 NumericUpDown
    没有评论的日子
    GetData.cs

    Hashtable 在程序中控制重复项
    Convert.ToInt32() VS System.Int32.Parse()
    饮食九要素
    添加 or 修改 的一个处理方式
    一个关于 电话号码 的正则表达式
  • 原文地址:https://www.cnblogs.com/fripside/p/3189122.html
Copyright © 2011-2022 走看看