• 数据库设计


    http://blog.csdn.net/sirfei/article/details/434994#comments

    1. 原始单据与实体之间的关系
      可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对

    应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实

    体,或多张原始单证对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计

    录入界面大有好处。
      〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表、社会

    关系表、工作简历表。这就是“一张原始单证对应多个实体”的典型例子。

    2. 主键PK的取值方法
       PK是供程序员使用的表间连接工具,可以是一无物理意义的数字串, 由程序自动加1来实现。也可

    以是有物理意义的字段名或字段名的组合。不过前者比后者好。当PK是字段名的组合时,建议字段的个

    数不要太多,多了不但索引占用空间大,而且速度也慢。

      

    3. 正确认识数据冗余
      主键与外键在多表中的重复出现, 不属于数据冗余,这个概念必须清楚,事实上有许多人还不清楚

    。非键字段的重复出现, 才是数据冗余!而且是一种低级冗余,即重复性的冗余。高级冗余不是字段的

    重复出现,而是字段的派生出现。
      〖例4〗:商品中的“单价、数量、金额”三个字段,“金额”就是由“单价”乘以“数量”派生出

    来的,它就是冗余,而且是一种高级冗余。冗余的目的是为了提高处理速度。只有低级冗余才会增加数

    据的不一致性,因为同一数据,可能从不同时间、地点、角色上多次录入。因此,我们提倡高级冗余(派

    生性冗余),反对低级冗余(重复性冗余)。

  • 相关阅读:
    python浏览本地文件,实现文件路径的选择
    《一线架构师实践指南》--- Refined Architecture
    第七周学习记录
    第五周学习记录
    中国国民经济行业分类数据下载(含爬取代码)
    python机器学习kmeans算法——对文本进行聚类分析
    TensorFlow2深度学习
    深度学习---Caffe之经典模型详解与实战a乐毅,王斌a
    《深度学习实践-基于Caffe的解析》_薛云峰
    Python带我起飞——入门、进阶、商业实战
  • 原文地址:https://www.cnblogs.com/gossip/p/3806142.html
Copyright © 2020-2023  润新知