理解数据库规范化的意义

日期: 2011-06-02 作者:Ronen Baram翻译:冯昀晖 来源:TechTarget中国 英文

数据库规范化是由Edgar Frank Codd提出的,他是IBM公司的一位计算机科学家,他在自己的论文《20世纪70年代大型共享数据银行数据关系模型》中首次提出这种说法。数据库规范化是一个过程,这个过程中需要对现存表结构进行修改,把表转化使遵循一系列先进的范式。   它着重于消除开发人员和他们项目的“电子表格综合症”。电子表格综合症是指开发人员倾向于在尽可能少的表中挤下尽可能多的信息。

  早些时候,由于受电子表格的概念以及在电子表格中管理数据思路的影响,开发人员们一直采用与涉及电子表格相同的思路设计MySQL数据库。现在,再用这种方法设计MySQL数据库被认为是不明智的做法,因为这种电子表……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

数据库规范化是由Edgar Frank Codd提出的,他是IBM公司的一位计算机科学家,他在自己的论文《20世纪70年代大型共享数据银行数据关系模型》中首次提出这种说法。数据库规范化是一个过程,这个过程中需要对现存表结构进行修改,把表转化使遵循一系列先进的范式。

  它着重于消除开发人员和他们项目的“电子表格综合症”。电子表格综合症是指开发人员倾向于在尽可能少的表中挤下尽可能多的信息。

  早些时候,由于受电子表格的概念以及在电子表格中管理数据思路的影响,开发人员们一直采用与涉及电子表格相同的思路设计MySQL数据库。现在,再用这种方法设计MySQL数据库被认为是不明智的做法,因为这种电子表格综合症设计的表在每次数据库有很小的改变时,都要持续不断地进行重新设计。

  在MySQL中实现数据库规范化的好处

  通过智能数据分类,降低存储空间使用量是对MySQL实现数据库规范化的众多好处之一。它帮助实现了更好,更快,更强的搜索功能,因为它与早期基于混合实体的搜索方式相比,需要扫描更少的实体。通过数据库规范化,数据完整性也得以改善,因为它把所有数据分成单独的实体,并用关联数据在实体间建立强连接。

  Mike Hillyer是之前MySQL AB的一位技术作家,他解释说:“数据库规范化的目标是确保每个表中所有非键列都直接依赖于主键:整个都是键,除了键没有其它。有了这个目标,随之而来还有一些好处,我们降低了冗余,减少了异常,提高了效率。”

  数据规范化很容易做到

  下面的例子将说明数据库规范化如何帮助实现MySQL中的良好设计。下面的表展示了需要在数据库中捕获的数据。

TitleAuthorBioISBNSubjectPagesPublisher
Beginning MySQL Database Design and Optimization

Chad Russell,

Jon Stephens

Chad Russell is a programmer and system administrator who owns his own internet hosting company. Jon Stephens is a member of the MySQL AB documentation team.90593324MySQL Database Design520Apress

  在上面展示的例子中,如果任意一个条件作为识别主键的话,会有大量的存储空间被浪费掉。因此,数据库规范化是必不可少的。这是一个循序渐进的过程,不能随意进行。下面的步骤可以帮你在MySQL中实现数据库规范化。

相关推荐