12.试述网状、层次,关系数据库的优缺点
- 网状数据库:
- 优点:
- 能够更为直接地描述现实世界,如一个节点可以有多个双亲,节点之间可以有多种联系。
- 具有良好的性能,存取效率较高。
- 缺点:
- 结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握。
- 网状模型的DDL、DML复杂,并且要嵌入某一种高级语言(如COBOL、C)中,用户不容易掌握,不容易使用。
- 由于记录之间的联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此用户必须了解系统结构的细节,加重了编写应用程序的负担。
- 层次数据库:
- 优点:
- 层次模型的数据结构比较简单清晰。
- 层次数据库的查询效率高。因为层次模型中记录之间的联系用有向边表示,这种练习在DBMS中常常用指针来实现,因此这种练习也就是记录之间的存取路径。当药存取某个节点的记录值,DBMS就沿着这一条路径很快找到该记录值,所以层次数据库的性能优于关系数据库,不低于网状数据库。
- 层次数据模型提供了良好的完整性支持。
- 缺点:
- 现实世界中很多联系都是非层次性的。
- 如果一个节点具有多个双亲节点等,用层次模型表示这类联系就很笨拙,只能引入冗余数据(易产生不一致性)或创建非自然的数据结构(引入虚拟节点)来解决。对插入和产出操作的限制比较多,因此应用程序的编写比较复杂、
- 查询子女节点必须通过双亲节点。
- 由于结构严密,层次命令趋于程序化。
- 关系数据库:
- 优点:
- 关系模型和格式化模型不同,它是简历在严格的数学概念的基础上的。
- 关系模型的概念单一。无论实体还是实体之间的联系都用关系来表示。对数据库的检索和更新结果也是关系(即表)。所以其数据结构简单、清晰,用户易懂易用。
- 关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
- 缺点:
- 由于存取路径岛屿用户是隐蔽的,查询效率往往不如格式化数据模型。为了提高性能,数据库管理系统必须到用户的查询请求进行优化,因此增加了开发数据库管理系统的难度。不过用户不必考虑这些系统内度的优化技术细节。
13.试述关系模型的概念,定义并解释一下术语:关系,属性,域,元组,码,分量,关系模式
- 关系:一个关系对应通常说的一张表。
- 属性:表中的一列即为一个属性,给每一个属性起一个名称即属性名。
- 域:域是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。
- 元组:表中的一行即为一个元组。
- 码:也称为码键。表中的某个属性组,它可以唯一确定一个元组。
- 分量:元组中的一个属性值。
- 关系模式:对关系的描述,一般表示为
关系名(属性1,属性2,…,属性n)