欢迎访问文稿网!

数据库的逻辑设计

范文之家 分享 时间: 加入收藏 我要投稿 点赞

数据库的逻辑设计

    4.4.4 数据库的逻辑设计

    1.E-R图和关系模式转换

    数据库的逻辑设计主要工作是将E-R图转换成指定RDBMS(数据库管理系统)中的关系模式。首先,从E-R图到关系模式的转换是比较直接的,实体与联系都可以表示成关系,在E-R图中属性也可以转换成关系的属性。在E-R图中合成与继承也可通过一定转换变成为关系模式中的关系或关系视图,下面讨论由E-R图、EE-R图转换成关系模式的一些转换问题。

    (1)命名与属性域的处理

    关系模式中的命名可以用EE-R图中原有命名,也可另行命名,但是应尽量避免重名,RDBMS一般只支持有限种数据类型而EE-R中的属性域则不受此限制,如出现有RDBMS不支持的数据类型时则要进行类型转换。

    (2)非原子属性处理

    在E-R图中允许出现非原子属性,但在关系模式中一般不允许出现非原子属性,非原子属性主要有集合型和元组型。如出现此种情况时可以进行转换,其转换办法是集合属性纵向展开而元组属性则横向展开。

    例4-1 有一学生实体,它有学号、学生姓名及选读课程,其中前两个为原子属性而后一个为集合型非原子属性,因为一学生可选读若干课程,设有学生S1307,王承志,他修读Database,Operating System及Computer Network三门课,此时可将其纵向展开用关系形式如表4-2所示。

    

    表4-2 学生实体

    img80

    (3)联系的转换

    在一般情况下联系可用关系表示,但是在有些情况下联系可归并到相关联的实体中。

    (4)嵌套的转换

    嵌套可以转换成联系,再由联系可转换成关系模式。

    (5)规范化

    在逻辑设计中还需对关系做规范化验证。

    (6)RDBMS

    满足RDBMS的性能、存储空间等要求的调整以及适应RDBMS限制条件的修改,它们包括如下内容:

    ①调整性能以减少连接运算。

    ②调整关系大小,使每个关系数量保持在合理水平,从而可以提高存取效率。

    ③尽量采用快照(Snapshot),因在应用中经常仅需某固定时刻的值,此时可用快照将某时刻值固定成快照,并定期更换,此种方式可以显著提高查询速度。

    2.关系视图的设计

    逻辑设计的另一个重要内容是关系视图的设计,它又称外模式设计。

    关系视图是在关系模式基础上所设计的直接面向操作用户的视图,它可以根据用户需求随时创建。一般RDBMS均提供关系视图的功能。

    关系视图的作用大致有如下几点:

    (1)提供数据的逻辑独立性:数据的逻辑模式会随着应用的发展而不断的变化,逻辑模式的变化必会影响到应用程序的变化,这就会产生极为麻烦的维护工作,而关系视图则起了逻辑模式与应用程序之间的隔离墙作用,有了关系视图后建立在其上的应用程序就不会随逻辑模式修改而产生变化,此时变动的仅是关系视图的定义。因此,关系视图提供了一种逻辑数据独立性,应用程序不受逻辑模式变化的影响。

    (2)能适应用户对数据的不同需求:每个数据库有一个非常庞大的结构,而每个数据库用户则希望只需知道他们自己所关心的那部分结构,不必知道数据的全局结构以减轻用户在此方面的负担,而此时可用关系视图屏蔽用户所不需要的模式而仅将用户感兴趣的部分呈现给用户。

    (3)有一定数据保密功能:关系视图为每个用户划定了访问数据的范围,从而在应用的各用户间起了一定的保密隔离作用。

221381
领取福利

微信扫码领取福利

微信扫码分享