loading请求处理中...

数据库设计必须熟悉的8个重要原则

2021-12-01 07:38:19 阅读 9405次 标签: 数据库设计 作者: riche
数据库设计必须熟悉的8个重要原则

    数据库是整个软件应用的根基,是软件设计的起点,它起着决定性的突变效果,因而咱们有必要对数据库设计高度重视起来,培育设计杰出数据库的习惯,是一个优秀的软件设计师所有必要具有的基本素质条件!那么咱们要做到啥程度才是对的呢?下面就说说数据库设计必须熟悉的8个重要原则:

    1.  数据库设计不仅仅停留于页面demo的表面

   页面内容所需要的字段,在数据库设计中仅仅一部分,还有体系运转、模块交互、中转数据、表之间的联络等等所需要的字段,因此数据库设计肯定不是简略的根本数据存储,还有逻辑数据存储。

    2. 数据库设计时就要思考到功率和优化问题

    一开始就要剖析哪些表会存储较多的数据量,关于数据量较大的表的设计往往是粗粒度的,也会冗余一些必要的字段,已达到尽量用起码的表、最弱的表关系去存储海量的数据。并且在设计表时,通常都会对主键树立集合索引,富含大数据量的表更是要树立索引以供给查询性能。关于富含核算、数据交互、计算这类需要时,还要思考是不是有必要选用存储过程。

    3.  设计表时不加主外键等约束性关联,系统编码阶段完成后再添加约束性关联

    这样做的目的是有利于团队并行开发,减少编码时所遇到的问题,表之间的关系靠程序来控制。编码完成后再加关联并进行测试。不过也有一些公司的做法是干脆就不加表关联。

    4. 数据库设计最起码要占用整个项目开发的40%以上的时间

       数据库是需要的直观反应和体现,因而规划时必需要实在契合用户的需要,要多次与用户沟通交流来细化需要,将需要中的要求和每一次的改变都要逐个体现在数据库的设计当中。假如需要不明确,就要剖析不确定的要素,设计表时就要事前预留出可变通的字段,正所谓“未雨绸缪”。 

    5. 设计合理的表关联

    若多张表之间的关系复杂,建议采用第三张映射表来关联维护两张表之间的关系,以降低表之间的直接耦合度。若多张表涉及到大数据量的问题,表结构尽量简单,关联也要尽可能避免。

    6. 添加必要的(冗余)字段

    像“创建时间”、“修改时间”、“备注”、“操作用户IP”和一些用于其他需求(如统计)的字段等,在每张表中必须都要有,不是说只有系统中用到的数据才会存到数据库中,一些冗余字段是为了便于日后维护、分析、拓展而添加的,这点是非常重要的,比如黑客攻击,篡改了数据,我们便就可以根据修改时间和操作用户IP来查找定位。

    7.  数据库设计完成后,项目80%的设计开发在你脑海中就已经完成了

    每个字段的设计都是有他必要的含义的,你在设计每一个字段的同时,就应该现已想明白程序中怎么去运用这些字段,多张表的联络在程序中是怎么表现的。换句话说,你完结数据库设计后,程序中所有的完成思路和完成方法在你的脑际中就现已思考过了。如果达不到这种程度,那当进入编码期间后,才发现要运用的技能或完成的方法数据库无法支撑,这时再改动数据库就会很费事,会形成一系列不可猜测的疑问。

    8.  选择合适的主键生成策略


    主键生成策略大致可分:int自增加类型(identity、sequence)、手动增加类型(树立独自一张表来保护)、手动保护类型(如userId)、字符串类型(uuid、guid)。int型的长处是运用简略、功率高,但多表之间数据兼并时就很简单出现疑问,手动增加类型和字符串类型能极好解决多表数据兼并的疑问,但同样也都有缺陷:前者的缺陷是增加了一次数据库访问来获取主键,而且又多保护一张主键表,增加了复杂度;而后者是十分占用存储空间,且表关联查询的功率低下,索引的功率也不高,跟int类型正巧相反。

   终上所述,咱们可见数据库设计在全部软件开发的起到的无足轻重的效果,尤其是我说的设计准则的第一点,数据库与需求是相得益彰的,我常常把软件开发比作轿车制作,轿车制作会经过图纸设计,模型制作,样车制作,小批量试生产,最终是批量生产等进程。全部进程环环相扣,后一进程是树立在前一进程准确的条件根底之上的。

数据库设计公司推荐

成为一品威客服务商,百万订单等您来有奖注册中

留言( 展开评论

快速发任务

价格是多少?怎样找到合适的人才?

官方顾问免费为您解答

 
数据库设计相关任务
DESIGN TASK 更多
为APP设计一款logo

¥1200 已有168人投标

车辆服务公司logo设计

¥1600 已有120人投标

软件开发UI设计

¥3000 已有0人投标

园区外墙效果图设计

¥1600 已有0人投标

车衣的外观设计

¥1000 已有0人投标

糕点品牌包装设计

¥1000 已有7人投标

湖南米粉门店形象设计

¥2000 已有4人投标