(一) 数据库的发展历史分哪几个阶段?各有什么特点。
答:数据库的发展历史经历了人工管理、文件系统和数据库系统三个发展阶段。 人工管理数据具有如下特点:
1、数据不保存
2、数据需要由应用程序自己管理,没有相应的软件系统负责数据的管理工作 3、数据不共享
4、数据不具有独立性,数据的逻辑结构或物理结构发生变化后,必须对应用程序做相应的修改,这就进一步加重了程序员的负担。 文件系统阶段特点为:
1、数据可以长期保存
2、由专门的软件即文件系统进行数据管理,程序和数据之间由软件提供的存取方法进行转换,使应用程序与数据之间有了一定的独立性,程序员可以不必过多地考虑物理细节,将精力集中于算法。 3、数据共享性差 4、数据独立性低 数据库系统阶段特点为:
1、数据结构化
2、数据的共享性好,冗余度低 3、数据独立性高
4、数据由DBMS统一管理和控制 (二)
简述数据库设计过程的各个阶段上的设计描述。
答:数据库设计过程分为六个阶段:
1、需求分析:准确了解与分析用户需求,(包括数据与处理)。需求分析是整个设计过程的基础,需求分析的结果是否准确反映了用户的实际需求,将直接影响到后面各个阶段的设计、并影响到设计结果是否合理和实用。
2、概念结构设计:数据库逻辑结构依赖于具体的DBMS,在将现实世界需求转换为机器世界的模型之前,我们先以一种独立于具体数据库管理系统的逻辑描述方法来描述数据库的逻辑结构,即设计数据库的概念结构。概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。 3、逻辑结构设计:逻辑结构设计是将抽象的概念结构转换为所选用的DBMS支持的数据模型,并对其进行优化。
4、数据库物理设计:数据库物理设计是对为逻辑数据模型选取一个时候应用环境的物理结构(包括存储结构和存取方法) 5、数据库实施
6、数据库运行和维护
(三) 学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,
其中有的教授和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。用E-R图画出该学校的概念模型。 答:E-R图如下所示:
(四) 今要建立关于系、学生、班级、学会诸信息的一个关系数据库。一个系
有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一个宿舍区。每个学生可参加若干学会,每个学会有若干学生。
描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。 描述班级的属性有:班号、专业名、系名、人数、入校年份。 描述系的属性有:系号、系名、系办公室地点、人数。
描述学会的属性有:学会名、成立年份、地点、人数。学生参加某学会有一个入会年份
请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况,讨论函数依赖是完全函数依赖,还是部分函数依赖。指出各种关系的候选码和外部码。 答:
关系模式如下:
学生:{学号, 姓名, 出生年月, 系名, 班号, 宿舍区}, 候选码:学号, 外部码: 班号
班级:{班号, 专业名, 系名, 人数, 入校年份}, 候选码:班号 , 外部码:无
系:{系号, 系名, 系办公室地点, 人数}, 候选码:系号、系名 外部码: 无
学会:{学会名, 成立年份, 地点, 人数}, 候选码:学会名 外部码: 无
函数依赖如下:
学生:{学号→姓名,学号→出生年月,学号→系名,学号→班号,学号→宿舍区}, 完全函数依赖,无传递依赖
班级:{班号→专业名,班号→系名,班号→人数,班号→入校年份}, 完全函数依赖,无传递依赖
系:{系号→系名,系号→系办公室地点,系号→人数}, 无传递依赖, 完全函数依赖,无传递依赖
学会:{学会名→成立年份,学会名→地点,学会名→人数}, 无传递依赖, 完全函数依赖,无传递依赖 (五)
现有关系数据库如下:
学生(学号,姓名,性别,专业、奖学金) 课程(课程号,名称,学分) 学习(学号,课程号,分数)
请用关系代数表达式实现下列1—4小题,用SQL语言实现下列5—8小题。 1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数; 答: