={ E→G,G→E,F→(E,G),H→(E,G),
(F,H)→E}
(1)求出R的所有候选关键字;
(2)根据函数依赖关系,确定关系模式R属于第几范式;
(3)将R分解为3NF,并保持无损连接性和函数依赖保持性;
(4)求出F的最小函数依赖集。
参考答案:
(1)R的候选关键字为:(F,H)
(2)R为:1NF
(3)分解为:
(,)、(,)、(,)、(,{})
(4)最小函数依赖集为:
按定理43,求最小函数依赖集步骤:
F=
=
=
10、试问下列关系模式最高属于第几范式,并解释其原因。
(1)R(A,B,C,D),F=。
(2)R(A,B,C,D,E),F=。
(3)R(A,B,C,D),F=。
(4)R(A,B,C),F=。
(5)R(A,B,C),F=。
(6)R(A,B,C,D),F=。
(7)R(A,B,C,D),F=。
参考答案:
只依次写出候选关键字与范式等级(范式按定义判定,具体略)
(1)AB 1NF
(2)AB,E 2NF
(3)AB,AD 3NF
(4)A,B BCNF
(5)C 2NF
(6)AD 1NF
(7)AD 1NF
二、填空题
1、对数据库的保护一般包括 安全性 、 完整性 、 并发控制 和 数据恢复 四个方面的内容。
2、对数据库 安全 性的保护就是指要采取措施,防止库中数据被非法访问、修改,甚至恶意破坏。
3、安全性控制的一般方法有 用户标识和鉴别 、 用户存取权限控制 、 视图机制 、
数据加密 和 审计 五种。
4、用户鉴定机制包括 用户标识定义 和 用户身份验证 两个部分。
5、每个数据均需指明其数据类型和取值范围,这是数据 完整性 约束所必需的。
6、在SQL中, COMMIT 语句用于提交事务, ROLLBACK 语句用于回滚事务。
7、加锁对象的大小被称为加锁的 粒度 。
8、对死锁的处理主要有两类方法,一是 预防死锁的发生 ,二是 检测死锁发现后予以消除死锁 。
9、解除死锁最常用的方法是 撤消一些陷入死锁的事务 。
10、基于日志的恢复方法需要使用两种冗余数据,即 后备数据库 和 日志文件 。
三、简单题
1、简述数据库保护的主要内容。
对数据库的保护一般包括4个方面的内容,一是对数据库完整性的保护,即保证库中的数据是正确的和相容的,符合完整性约束条件的;二是对数据库安全性的保护,即防止库中数据被非法访问、修改,甚至恶意破坏;三是对并发的事务进行控制,保证数据库的一致性;四是在发生故障后,对数据库进行恢复,尽量减少故障造成的损失。
2、什么是数据库的安全性?简述DBMS提供的安全性控制功能包括哪些内容。
解:
(1)数据库的安全性是指保护数据库以防止非法使用所造成数据的泄露、更改或破坏。
(2)常采取的安全保护措施有用户鉴定、存取控制、视图保护、审计和数据加密等。
4、什么是数据库的完整性?DBMS提供哪些完整性规则,简述其内容。
(1)数据库的完整性是指保护数据库中数据的正确性、有效性和相容性,防止错误的数据进入数据库造成无效 *** 作。
(2)DBMS提供实体完整性规则、参照完整性规则及用户自定义完整性规则
为保障数据库的完整性,数据库管理系统应提供完整性约束的定义机制和检查机制。
5、数据库的安全性保护和完整性保护有何主要区别
解:
数据库的完整性和安全性是数据库保护的两个不同的方面。
安全性是保护数据库,以防止非法使用所造成数据的泄露、更改或破坏,安全性措施的防范对象是非法用户和非法 *** 作;完整性是防止合法用户使用数据库时向数据库中加入不符合语义的数据,完整性措施的防范对象是不合语义的数据,即不正确的数据。
6、什么是事务?简述事务的ACID特性,事务的提交和回滚是什么意思?
解:
(1)事务是数据库系统中执行的一个工作单位,它是由用户定义的一组 *** 作序列组成。
一个事务可以是一组SQL语句、一条SQL语句或整个程序,一个应用程序可以包括多个事务。事务的开始与结束可以由用户显式控制。如果用户没有显式地定义事务,则由DBMS按照缺省规定自动划分事务。
(2)事务是由有限的数据库 *** 作序列组成,但并不是任意的数据库 *** 作序列都能成为事务,为了保护数据的完整性,一般要求事务具有以下四个特征:
1)原子性(Atomicity)2)一致性(Consistency)3)隔离性(Isolation)4)持久性(Durability)事务上述四个性质的英文术语的第一个字母分别为A、C、I、D。因此,这四个性质也称为事务的ACID准则。
(3)
COMMIT表示事务的提交,即将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,此时事务正常结束;
ROLLBACK表示事务的回滚,即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新 *** 作全部撤销,再回滚到事务开始时的状态。
7、数据库管理系统中为什么要有并发控制机制?
解:
每个用户在存取数据库中的数据时,可能是串行执行,即每个时刻只有一个用户程序运行,也可能是多个用户并行地存取数据库。数据库的最大特点之一就是数据资源是共享的,串行执行意味着一个用户在运行程序时,其他用户程序必须等到这个用户程序结束才能对数据库进行存取,这样数据库系统的利用率会极低。因此,为了充分利用数据库资源,很多时候数据库用户都是对数据库系统并行存取数据,但这样就会发生多个用户并发存取同一数据块的情况,如果对并发 *** 作不加控制可能会产生 *** 作冲突,破坏数据的完整性。即发生所谓的丢失更新、污读、不可重读等现象。
(2)实现并发控制的方法主要有两种:封锁(Lock)技术和时标(Timestamping)技术。
9、什么是封锁?封锁的基本类型有哪几种?含义是什么?
解:
(1)所谓封锁就是当一个事务在对某个数据对象(可以是数据项、记录、数据集、以至整个数据库)进行 *** 作之前,必须获得相应的锁,以保证数据 *** 作的正确性和一致性。
(2)基本的封锁类型有两种:排它锁和共享锁。
1)排它锁(Exclusive Lock):排它锁又称写锁,简称为X锁,其采用的原理是禁止并发 *** 作。当事务T对某个数据对象R实现X封锁后,其他事务要等T解除X封锁以后,才能对R进行封锁。这就保证了其他事务在T释放R上的锁之前,不能再对R进行 *** 作。
2)共享锁(Share Lock):共享锁又称读锁,,简称为S锁,其采用的原理是允许其他用户对同一数据对象进行查询,但不能对该数据对象进行修改。当事务T对某个数据对象R实现S封锁后,其他事务只能对R加S锁,而不能加X锁,直到T释放R上的S锁。这就保证了其他事务在T释放R上的S锁之前,只能读取R,而不能再对R作任何修改。
11、什么是活锁?如何处理?
解:
(1)封锁技术可有效解决并行 *** 作引起的数据不一致性问题,但也可产生新的问题,即可能产生活锁和死锁问题。
活锁(Livelock):当某个事务请求对某一数据的排它性封锁时,由于其他事务一直优先得到对该数据的封锁与 *** 作而使这个事务一直处于等待状态,这种状态形成活锁。
(2)避免活锁的简单方法是采用先来先服务的策略,按照请求封锁的次序对事务排队,一旦记录上的锁释放,就使申请队列中的第一个事务获得锁。
12、什么是死锁?消除死锁的常用方法有哪些?请简述之。
(1)在同时处于等待状态的两个或多个事务中,每个事务都在等待其中另一个事务解除封锁,它才能继续执行下去,造成任何一个事务都无法继续执行,这种状态称为死锁。
(2)发生死锁的必要条件有以下四条:
①互斥条件②不可抢占条件③部分分配条件:④循环等待条件
①一次加锁法
一次加锁法是每个事物必须将所有要使用的数据对象全部依次加锁,并要求加锁成功,只要一个加锁不成功,表示本次加锁失败,则应该立即释放所有已加锁成功的数据对象,然后重新开始从头加锁。
②顺序加锁法
顺序加锁法是预先对所有可加锁的数据对象规定一个加锁顺序,每个事务都需要按此顺序加锁,在释放时,按逆序进行。
14、数据库运行过程中可能产生的故障有哪几类
(1)数据库运行过程中可能会出现各种各样的故障,这些故障可分为以下三类:事务故障、系统故障和介质故障。
16、什么是日志文件?为什么要在系统中建立日志文件?
解:
(1)日志文件是用来记录事务对数据库的更新 *** 作的文件。对数据库的每次修改,都将把被修改项目的旧值和新值写在一个叫做运行日志的文件中,目的是为数据库的恢复保留依据。
典型的日志文件主要包含以下内容:1)更新数据库的事务标识(标明是哪个事务);2) *** 作的类型(插入、删除或修改);3) *** 作对象;4)更新前数据的旧值(对于插入 *** 作而言,没有旧值);5)更新后数据的新值(对于删除 *** 作而言,没有新值);6)事务处理中的各个关键时刻(事务的开始、结束及其真正回写的时间)。
二、填空题
1、在设计分E-R图时,由于各个子系统分别面向不同的应用,所以各个分E-R图之间难免存在冲突,这些冲突主要包括 命名冲突 、 属性冲突 和 结构冲突 三类。
2、数据字典中的 数据项 是不可再分的数据单位。
3、若在两个局部E-R图中都有实体“零件”的“重量”属性,而所用重量单位分别为公斤和克,则称这两个E-R图存在 属性 冲突。
5、确定数据库的物理结构主要包括三方面内容,即: 确定数据存放位置和存储结构 、 确定数据存取方法 和 系统配置 。
6、将关系R中在属性A上具有相同值的元组集中存放在连续的物理块上,称为对关系R基于属性A进行 聚簇 。
7、数据库设计的重要特点之一要把 结构(数据) 设计和 行为(处理) 设计密切结合起来,并以 结构(数据) 为核心而展开。
8、数据库设计一般分为如下六个阶段: 需求分析 、 概念结构设计 、 逻辑结构设计 、数据库物理设计、数据库实施、数据库运行与维护。
9、概念设计的结果是得到一个与 计算机与DBMS 无关的模型。
10、在数据库设计中, 数据字典 是系统各类数据的描述的集合。
三、简答题
1、数据库设计分为哪几个了阶段?每个阶段的主要工作是什么?
解:
(1) 按照规范化的设计方法,以及数据库应用系统开发过程,数据库的设计过程可分为以下六个设计阶段需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施、数据库运行和维护。
(2) 以下是数据库设计六个步骤的具体内容:
1、需求分析阶段2、概念结构设计阶段3、逻辑结构设计阶段4、物理设计阶段
5、数据库实施阶段6、数据库运行与维护阶段
5、什么是E-R图?构成E-R图的基本要素是什么?
(1)E-R图即是实体-联系图,是信息世界概念模型的一种。
(2)E-R图提供了表示实体型、属性和联系的方法。
实体型:用矩形表示,矩形框内写明实体名。
属性:用椭圆表示,椭圆形内写明属性名。并用无向边将其与相应的实体连接起来。
联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)。
6、用E-R图表示概念模式有什么好处?
解:
概念模式是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象。将概念结构设计从设计过程中独立出来,可以带来以下好处:
(1) 任务相对单一化,设计复杂程度大大降低,便于管理。
(2) 概念模式不受具体的DBMS的限制,也独立于存储安排和效率方面的考虑,因此,更稳定。
(3) 概念模型不含具体DBMS所附加的技术细节,更容易被用户理解,因而更能准确的反映用户的信息需求。
8、一个图书馆理系统中有如下 信息:
图书:书号、书名、数量、位置
借书人:借书证号、姓名、单位
出版社:出版社名、邮编、地址、电话、E-mail
其中约定:任何人可以借多种书,任何一种书可以被多个人借,借书和还书时,要登记相应的借书日期和还书日期;一个出版社可以出版多种书籍,同一本书仅为一个出版社所出版,出版社名具有惟一性。
根据以上情况,完成如下设计:
(1)设计系统的E-R图;
(2)将E-R图转换为关系模式;
(3)指出转换后的每个关系模式的关系键。
解:
(1)
(2)与(3)(带下划线的为主码)
借书人(借书证号,姓名,单位)
借阅(借书证号,书号,借书日期,还书日期)
图书(书号,书名,数量,位置)
出版(书号,出版社名)
出版社(出版社名,邮编,地址,电话,E-mail)
单选题 1下面哪个不是数据库技术的主要特点 (D)
A.数据的结构化 B.数据的冗余度小 C.较高的数据独立性 D.程序的标准化
2下列叙述正确的为(B)
A.关系中允许有重复的元组,也允许有重复的属性名
B.关系中允许有重复的元组,不允许有重复的属性名
C.关系中不允许有重复的元组,允许有重复的属性名
D.关系中不允许有重复的元组,也不允许有重复的属性名
3如果两个实体之间的联系是1:M,则实现l:M联系的方法是 (C)
A.将两个实体转换成一个关系
B.将两个实体转换的关系中,分别加入另一个关系的主码。
C.将“1”端实体转换的关系的主码,放入“M”端实体转换的关系中
D.将“M”端实体转换的关系的主码,放入“1”端实体转换的关系中
4SQL的标准库函数COUNT,SUM,AVG,MAX与MIN等,不允许出现在下列语句 (D)中 A.SEIECT
B.HAVING C.GROUP……HAVING D.WHERE
填空题
1、班级和学生之间的联系是(一对多)联系,班级和班长之间的联系是( 一对一 )联系,学生和课程之间的
联系是( 多对多 )联系。
2、在数据库的三级模式结构中,外模式有( 多个 ),模式和内模式只有( 一个 )。
3、DB的含义是( 数据库 ),DBS的含义是( 数据库系统 ),DBMS的含义是( 数据库管理系统 )。
简答题:
1、SQL Server中的语句权限的含义及内容。
语句权限主要指用户是否具有权限来执行某一语句,这些语句通常是一些具有管理性的 *** 作,如创建数据库、表、存储过程、触发器等。
2、SQL Server中数据库和应用程序的安全机制有哪四种?
用户标识与鉴别;存取控制;视图机制;审计机制等
3、事务故障的恢复方法。
反向扫描日志文件,查找该事务的更新 *** 作;对该事务的更新 *** 作进行逆向 *** 作;继续反向扫描日志文件,查找该事务的其他更新 *** 作并逆向 *** 作;继续处理,直到事务的开始标记。
4、E-R图设计中,合并分E-R图时可能产生的冲突及解决办法。
冲突主要有三种:属性冲突、命名冲突和结构冲突。属性冲突需要靠各部门协商讨论解决,但也非易事;命名冲突通常也像处理属性冲突一样,通过讨论协商等行政手段进行解决;结构冲突主要是根据应用的语义对实体联系
的类型进行综合或调整。
5、事务的四个性质。
(1)原子性(Atomicity)
事务的原子性是指事务中包含的所有 *** 作要么全做,要么全不做(all or none)。
(2) 一致性(Consistency)在事务开始以前,数据库处于一致性的状态,事务结束后,数据库也必须处于一致性状态。 事务应该把数据库从一个一致性状态转换到另外一个一致性状态。
(3) 隔离性(Isolation)事务隔离性要求系统必须保证事务不受其他并发执行的事务的影响,也即要达到这样一种效果:对于任何一对事务T1 和 T2,在事务 T1 看来,T2 要么在 T1 开始之前已经结束,要么在 T1 完成之
后才开始执行。这样,每个事务都感觉不到系统中有其他事务在并发地执行。
(4)持久性(Durability)一个事务一旦成功完成,它对数据库的改变必须是永久的,即便是在系统遇到故障的情况下也不会丢失。数据的重要性决定了事务持久性的重要性。
6、有两个实体集,若它们之间存在着一个M:N联系、1:M联系和1:1联系,根据ER模型转换成关系数据库的规则,这个ER结构转换成表的个数分别是多少?
M:N联系:三个表,1:M联系:两个表,1:1联系:两个表
7、举例说明参照完整性规则中对外码有何要求。
若属性F是基本关系R的外码,它与基本关系S的主码KS相对应,则对于R中每一元组在F上的值必须为:或者为空,或者等于S中某个元组的主码值。比如:学生关系中每个元组的专业号属性只能取下面两类值:空值,表示未给该
学生分配专业;非空值,这时该值必须是专业关系中某个元组的专业号值。
8、举例说明SQL Server中有哪3类触发器。
INSERT触发器、UPDATE触发器和DELETE触发器 (不再举例)
SQL语言设计题
将借书日期在2006年4月以前的借阅记录存入临时的超期借阅表。
select into #超期借阅表 from 借阅记录表 where 日期<'2006-04-01'
设有如下三个关系模式,用SQL语句完成:
学生(学号,姓名,性别,年龄,专业)
课程(课程号,课程名,学分,先行课)
选课(学号,课程号,任课教师,成绩)
1、创建电子商务专业学生成绩视图,属性包括学号、姓名、课程名和成绩。
create view '电子商务专业学生成绩视图' as
select s学号,s姓名,c课程名,s_c成绩 from table 学生 s,课程 c,选课 s_c where
s学号=s_c学号 and s_c课程号=c课程号 and s专业='电子商务'
2、创建计算机应用专业的学生成绩统计视图,属性包括学号、姓名、总成绩和平均成绩。
create view ‘计算机专业学生成绩统计视图’ as
select s学号,s姓名,sum(成绩),avg(成绩) from 学生 s,选课 s_c
where s学号=s_c学号 and 专业='计算机应用'
group by 学号,姓名
3、查询没有成绩的学生的学号、姓名和课程号。
select distinct s学号,s姓名,s_c课程号 from s,s_c where s学号=s_c学号 where s_c成绩=0
4、查询选修课程号为001且成绩为最好的学生的学号、姓名和成绩
select s学号,s姓名,max(s_c成绩) from 学生 s,选课 s_c where s学号=s_c学号 and s_c课程号=‘001’
5、查询至少选修了二门及二门以上课程的学生的学号
select 学号 from 选课表 group by 学号 having count()>=2
1需要建立密码表,使每个人的用户密码独立
2如果是一个界面,不需要每个库都建立密码表。但要以一个库为基础,需要用到别的库,在过程中调用就可以了
3在我知道的企业系统中是每个库都建立了自己的密码表的
4关于最后一个问题,使用同一个账号,用户界面是一样的,难以区分。 *** 作错误无法追责。但是有一点可以肯定,可以同时登陆客户端。
E-R图也称为实体-联系图(Entity Relationship Diagram),它提供了表示实体类型、属性和联系的方法,是用来描述现实世界的概念模型。
在ER图中有以下四个成分:
矩形框:表示实体,在框中记入实体名。
菱形框:表示联系,在框中记入联系名。
椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。
连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。)
扩展资料:
E-R图设计的正确与否取决于数据库设计人员能否真正把握应用环境的业务流程以及在该业务流程中所涉及的各个客观对象和他们之间发生的活动,这需要作准确深入的用户需求分析。
这些客观对象如果需要记录的话,就抽象为E-R图中的实体(描述实体的众多相关数据就抽象为实体的属性,将具有相同属性的众多实体抽象为实体型)。它们之间发生的活动如果也需要记录的话,就抽象为E-R图中的联系,这是E-R图设计的重点。
参考资料来源:百度百科-E-R图
以上就是关于数据库中结构数据模型包括哪些概念数据模型不属于结构数据模型求解全部的内容,包括:数据库中结构数据模型包括哪些概念数据模型不属于结构数据模型求解、几个数据库技术及应用题目、SQL多用户访问数据库如何解决的冲突(多用户同时访问数据库)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)