• 数据库设计体会


    我以后在数据库设计期间:应该牢记的:

    第一:所有的Float类型的字段,必须设计成NUMBER(10,2),觉得设计为VARCHAR(20)也很好。

    第二:所有的时间类型的字段,设计成VARCAHR(20)

    第三:所有表的主键要求自增,或者是用GUID,自增主键建议使用:表名_ID的形式。自增做主键的问题是:在oracle导入导出会遇到问题,以及多台oracle做数据同步的时候(解决方案就是一个表用1自增,另外的用10亿自增),guid的好处就是唯一性,能够保证数据库里的每一条记录都是唯一的一个GUID.

    第四:考虑到表与表之间的关联。对于子表的外键,应该预留一个字段存放主表的名称

    例如

     单位表 是主表                     采购单 是子表

    DEPT_ID,DEPT_name            PUR_ID ,DEPT_ID,DEPT_name

    虽然是浪费了磁盘的存储空间,但是同样提高了查询的效率,尤其是在多表联合查询,以及具有递归的表进行联合查询!

    第五:尽可能的去使用绑定变量,以及视图和存储过程。

    第六:尽可能的不去使用复合主键。

    第七:尽量不要去将实体的属性设为主键。当然实体的有些属性可以存在不存在,存在就唯一,就好像身份证号码。

    对于主键的选择,尽量不去选择经常修改的键值。

    第八:对于表的列数设计最好不要超过30列,列越多越不利于管理和维护。

    第九:表的命名:采用:项目名称_模块名称_表名称。

    暂无:以后在工作中遇到的问题会继续补上,希望网友帮忙补上

        

  • 相关阅读:
    P1847 轰炸II
    c++ 如何对拍
    P2689 东南西北
    P2006 赵神牛的游戏
    P1320 压缩技术(续集版)
    vuex
    less
    将二维数组转化成一维数组
    剩余数组(从'水果数组'筛选掉'吃了的数组')
    将一维数组转化成二维数组
  • 原文地址:https://www.cnblogs.com/umlzhang/p/1821528.html
Copyright © 2020-2023  润新知