• 关系数据库(MySQL)的规范化、以及设计原则


    1.了解范式(NF)

    为了使得关系数据库能够符合规范理论,所有的数据库表都要满足:范式

    关系数据库的范式有五类:第一范式,第二范式,....第五范式。下面我们来了解一下前三个范式:

    第一范式:简单来说就是表中不能嵌套表(使用一个列不能有多个值,列是原子级别的不能在分割)

    第二范式:(在介绍第二范式之前,首先要知道什么是主键,如果这一列是主键那么,每一行的的这一列都是不能为空且不能重复的)

    简单来说第二范式就是说,你的属性必须完全依赖你的主键,如果你的表里面有一个属性是不依赖你的主键的,或者是依赖你的联合主键中的一个,那么你必须将表进行拆分。

    最后最简单来讲就是,你表中的属性要和你的主键相关联,能被主键标识。

    第三范式:就是说一张表里面不能存在传递依赖。就是说你这表里面的某一属性不能依赖另外一个属性来传递。

    2.数据库的设计原则

    1.数据库中的数据应该尽可能的实现共享,减少重复等等。

    2.保证输入、修改数据时的一致性和正确性。

    3.保证数据与使用数据的程序有较高的独立性。

    3.实体的三种关系

    1.一对一:一张表中的一个属性只与另外一张表的一个属性匹配。

    2.一对多:一张表中的一个属性可以与另外一张表的多个属性匹配。

    3.多对多:多对多,需要使用三种表来实现。第三个表为链接表,链接表里面含有另外两张表的主键。

    4.数据库的三级模式结构

    1.外模式:一个数据库可以有多个外模式,是呈现在用户目前的模式。可以看见数据逻辑和特征描述。

    2.模式:数据库只有一个逻辑模式,在数据库的中间层。

    3.内部=模式:数据库只有一个内模式,就是对数据库的存储方式在底层的描述。

  • 相关阅读:
    LeetCode 242. Valid Anagram (验证变位词)
    LeetCode 205. Isomorphic Strings (同构字符串)
    LeetCode 204. Count Primes (质数的个数)
    LeetCode 202. Happy Number (快乐数字)
    LeetCode 170. Two Sum III
    LeetCode 136. Single Number (落单的数)
    LeetCode 697. Degree of an Array (数组的度)
    LeetCode 695. Max Area of Island (岛的最大区域)
    Spark中的键值对操作
    各种排序算法总结
  • 原文地址:https://www.cnblogs.com/SAM-CJM/p/9609436.html
Copyright © 2020-2023  润新知