zoukankan      html  css  js  c++  java
  • 三大范式

    范式,数据设计的规范。优化数据存储方式。

    第一范式:

    保证数据字段的原子性。即每一个字段不可再分割。

    比如:一张用户表,字段:姓名,性别,年龄,地址。 其中的地址就不满足原子性。地址一般会分割为省,市,区。便于业务上对地址条件的筛选和功能扩展。

    第二范式:

    数据记录的惟一性,非关键字段完全依赖,不部分依赖。(满足第一范式前提下)

    比如:一张房间订单表,字段:订单号,姓名,身份证,房间号,手机号。 当一个人订多个房间时,数据记录信息,得身份证号,手机号就是重复的。

    可以改为 订单号(主键),姓名,房间号 和  姓名(主键),身份证,手机号 两种表。

    第三范式:

    表中的每一列都要与主键直接相关,而不是间接相关(表中的每一列只能依赖于主键)。(满足第一,第二范式前提下)

    比如 订单号(主键),userid,姓名,房间号 和  userid(主键),姓名,身份证,手机号 两种表

    虽然已经拆表了,但是第一张表的姓名关联userid,userid在关联订单号。关联表只存主键字段。

    范式的优缺点

    • 优点
    • 结构合理
    • 冗余较小
    • 尽量避免插入删除修改异常
    • 缺点
    • 性能降低
    • 多表查询比单表查询速度慢
  • 相关阅读:
    c/c++ const
    Lucene2.9.1使用小结(同样适用于Lucene 3.0 )
    java 对properties 文件的写操作
    oracle 建表序列插入值
    jxl 读取2003 excel 示例
    HttpClient 的使用
    小故事
    iText 导出word 经典实现
    使用dom4j 解析xml
    lucene 在项目中的使用
  • 原文地址:https://www.cnblogs.com/anyihen/p/12327283.html
Copyright © 2011-2022 走看看