3.1 关系数据库设计理论

关系数据库是以关系模型为基础的数据库,它利用关系来描述现实世界。关系具有概念单一性的特点,一个关系既可以描述一个实体,也可以描述实体之间的联系。一个关系模型包括一组关系模式,而各个关系模式之间并不是完全孤立的,只有它们之间相互关联才能构成一个模型。这些关系模式的全体定义构成关系数据库模式。

数据库设计是一个复杂的过程。数据库设计的一个最基本的问题是如何建立一个好的数据库模式,即给出一组数据,如何构造一个适合于它们的数据模式,使数据库系统无论是在数据存储方面,还是在数据操作方面都有较好的性能。利用关系数据库设计理论则可以解决这个问题。

关系数据库设计理论是数据库语义学的重要内容,借助于近代数学工具,它提出了一整套严密的理论和实用算法,巧妙地把抽象的数学理论和具体的实际问题结合起来,对现实世界存在数据依赖关系进行关系模式的规范化处理,从而得到一个好的数据库设计。规范化的关系模式至少可以避免许多不希望的异常。但是,找出所有的数据依赖关系并不是一件容易的事,而且纯粹根据存在的数据依赖进行关系规范化所得到的数据库设计也不一定是最优的,因为其并没有考虑关系的实际大小和对关系要进行哪些操作。

但是,关系数据库设计理论还是有它的实用价值的。首先,关系数据库设计理论为我们提供了分析和判别一个好的数据库设计的标准。其次,从E-R模型转化得到的关系模式可再用关系规范化理论进行优化。最后,由于将E-R模型转换所得到的关系模型有时很烦琐,而关系数据库设计理论可以指导我们合并关系模式以精简设计。所以,当前流行的关系数据库设计方法是先得到现实世界的E-R模型,然后转化成关系模式,再进行关系模式的规范化。

关系数据库设计理论主要包括三方面的内容,即函数依赖、范式和模式设计方法。下面主要讨论函数依赖和关系模式的规范化(即范式)。