推荐: LOGO设计微信开发包装设计游戏开发接口开发手机网站开发VI设计文字设计Web前端开发网页设计客厅装修情人节表白Oracle数据库网站建设个人网站建设微信客户端

热门搜索: LOGO设计微信开发VI设计网站建设网站推广

当前位置: 威客百科 > 数据库设计 > 数据库设计常见问题
免费发布需求,接收报价与方案

数据库设计常见问题

什么是数据库设计?

相关提示: 【数据库设计规范】【数据库设计原则】【数据库课程设计总结】【数据库设计文档】【数据库设计的步骤】【图书管理系统数据库设计】

    如果把企业的数据比做生命所必需的氧气,那么数据库的设计就是应用中最必须的氧气了。那么在数据库设计道路上,我们肯定会遇到很多的挫折和问题。那么接下来,小编 就带大家来看看数据库设计的常见问题吧!
数据库设计常见问题
    为什么一个好的数据库设计首先要满足用户的需求?
    因为数据库设计中所有的信息系统最后都提供给最终用户进行使用,对于这一点相信大家都已经达成一致的意见。但是准确地把握用户的需求是很难的,虽然专家已经从各个方面给出了解决方案,但是用户需求仍然是软件工程中最不确定的因素之一。

    为什么一个好的数据库设计要便于维护和扩充?
    为了应对用户需求从而修改和添加,也为了满足各种不同的软硬件环境下系统的使用,大部分信息系统都不得不在其生命期中进行升级和调整。在这些升级、调整中,又有相当多的部分会涉及到数据库设计的修改,因此,数据库设计最好从一开始就要在易维护、可扩充的角度上多加斟酌。
                        
    为什么一个好的数据库设计要具有“可读性”?
    如同编程书籍中反复强调的程序员一定要在代码的可读性方面下功夫一样,考虑到信息系统将来的升级与维护可能会由另外一批人中途来进行,因此数据库开发与设计也必然要具有可理解性。
为什么一个好的数据库设计要能够满足空间和效率的要求?
对于一个信息系统来说,需要在实现用户需求的基础上,额外保证一个较低的空间占用以及短的响应时间都是理智的客户所愿意看到的。

    为什么一个好的数据库设计可以简化业务逻辑的设计?
    所有的数据库设计都不是孤立的,它通过相应的业务逻辑从而实现(三层结构中还包括有表现层)形成最终的我们都愿意看到的产品,因此一个好的数据库设计应该能够帮助降低业务逻辑的编写难度,最起码不要给概念、物理逻辑的设计和编码带来额外工作。那么,为了不给操作人员带来额外的工作量,又该做些什么呢?
    1、所有允许为空的字段必须是基于用户需求,而不是出于设计上方便的考虑。这样带来的好处是让详细设计中的某些错误和疏漏(如在设计中没有考虑对非空字段的内容检查)在编码和单元测试阶段就被发现,从而避免了进一步扩散,有助于提高软件的质量。
    2、不要业务逻辑代码实现唯一性约束
    对数据库表中的某些字段(或者是有多个字段的组合合成)的唯一性约束应该尽可能地加到数据库端。因为靠这种约束工作交给业务逻辑中去实现不仅代价高昂而且不可靠。
    3、关联约束一定要建立在数据库端
    分析出设计中所涉及的主外键引用关系并体现在数据库设计中。这个是基于出于两点考虑:降低业务逻辑的编写难度和数据关联性约束的要求。