- 5
- 0
- 约3.91千字
- 约 6页
- 2017-08-08 发布于湖南
- 举报
2017年电大 《数据库应用技术》第2次作业及答案
《数据库应用技术》第2次作业及答案
第三章思考与练习题
一、选择题
1.设一个关系为R,如果它的每个属性都是不可再分的,则称这个关系是符合( A )。
A、第一范式 B、第二范式
C、第三范式 D、BNC范式
2.在第一个关系中出现,在第二个关系中不出现的记录组成的关系称为两个关系的( C )。
A、交 B、并 C、差 D、笛卡儿积
3.A
4.C
二、简答题
1.设关系模式R有N个属性,在模式R上可能成立的函数依赖有多少个?
参考答案:
函数依赖有N×(N-1)个
2.设有关系模式R(职工号,职工名,项目号,项目名,工资),假设一个职工可参加多个项目,在每个项目中各领一份工资。那么请回答以下问题:
(1)请写出这个关系模式的函数依赖和主关键字;
函数依赖包括:职工号→职工名,项目号→项目名,(职工号,项目号)→工资
主键为(职工号,项目号)
(2)这个关系符合第几范式,为什么?
这个关系符合第一范式,因为它的每个属性都不可再分。
(3)请举例说明,这个关系存在哪些问题;
这个关系没有达到第二范式,可能出现数据冗余和操作异常。
例如,某个职工参与了多个项目的工作,他的职工号、职工名会重复多次存储。同样,如果一个项目有多名职工参加,项目号和项目名也会重复我次存储。另外,如果现在增加了一个新的项目,但暂时还没有安排职工参加,那么由于主键是(职工号,项目号),这个项目的信息可能无法插入。
(4)请把这个关系模式分解成3NF,并说明理由。
修改后的各个关系如下:
职工关系=(职工号,职工名)
项目关系=(项目号,项目名)
职工选择项目关系=(职工号,项目号,工资)
(注:此处的工资是指职工参加某个项目得到的劳动报酬)
3.关系完整性的主要内容是什么?为什么要保证关系的完整性?
参考答案:
关系完整性就是关系模型中数据的正确性、一致性和有效性。关系完整性又包括实体完整性、参照完整性和用户定义的完整性三个方面。
只有保证了关系的完整性,才能使数据库中的数据正确、一致和有效。
4.SQL Server中进行关系完整性的主要方法是什么,请写出相应的SQL语句。
参考答案:
1)SQL Server通过约束机制来实现数据库完整性保护。主要包括:Primary Key约束、Foreign Key约束、Default约束、Unique约束、Check约束等。
Primary Key约束:
学号 char (8) NOT NULL
PRIMARY KEY(学号)
Foreign Key约束:
学号 char (8) NOT NULL
REFERENCES 学生表(学号)
Default约束:
成绩 numeric(9,2) DEFAULT 0.00
Unique约束:
学号 char (8) NOT NULL
UNIOQUE(学号)
Check约束:
年龄 int CHECK (年龄)17 and 年龄25)
2)使用规则实施数据的完整性。
创建规则的语法结构如下:
CREATE RULE 规则名 AS 条件表达式
3)使用默认实施数据完整性管理。
创建默认的语法如下:
CREATE DEFAULT 默认名 AS 默认值
5.为什么要进行规范化?规范化的相关理论是什么?请简要说明。
参考答案:
为确保数据库设计的正确性,在数据库逻辑设计阶段,常使用关系规范化理论来指导关系型数据库的设计。其基本思想是,每个关系都应满足一定的规范,才能使关系模式设计合理,达到减少冗余,提高查询效率的目的。
一个好的数据库关系,应该没有数据冗余、更新异常、插入异常、删除异常问题的存在,这就必须进行规范化处理。
规范化使用的理论是函数依赖。
6.什么是一个“好”的关系模式,一个“不好”的关系模式有什么缺点?
参考答案:
“好”的关系模式通常是指符合第三范式要求的关系,“不好”的关系模式会存在数据冗余、更新异常、插入异常、删除异常等问题。
7.请写出一个符合第三范式的关系模式,并说明理由。
参考答案:
学生=(学生号,姓名,性别,专业)
课程=(学生号,课程号,成绩)
选课=(课程号,课程名,课程学分)
第四章思考与练习题
一、填空题
1.数据库设计一般包括需求分析、概念设计、逻辑设计、物理设计、数据库实施和运行维护等阶段。
2.数据库应用系统的建设包括结构设计和行为设计两个方面。
3.数据库设计的
原创力文档

文档评论(0)