好文档 - 专业文书写作范文服务资料分享网站

★数据库系统东北师范大学离线作业与答案

天下 分享 时间: 加入收藏 我要投稿 点赞

离线考核

《数据库系统》

满分100分

一、名词解释题(每小题2分,共10分。) 1.数据库系统

数据库系统(DataBase System,DBS):是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。

2.数据库安全性

数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。 3.3NF

关系模式R 中若不存在这样的码X、属性组Y及非主属性Z(Z则称R∈3NF。 4.封锁

就是事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁。加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其它的事务不能更新此数据对象。

5.数据库镜像

是DBMS自动把整个数据库或其中的关键数据复制到另一个磁盘上,DBMS自动保证镜像数据与主数据库的一致性。

二、简答题(每小题5分,共20分。)

1.试述强制存取控制方法。为什么强制存取控制比自主存取控制更安全?

强制存取控制方法中,对每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。对于任意对象,只有具有合法许可证的用户才可以存取。因此强制存取控制相对比较严格。MAC是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。

2. 试述存储过程的优点。

(1)执行速度快。存储过程在创建时就经过了语法检查和性能优化,因此在执行时不必再重复这些步骤。存储过程在经过第一次调用之后,就驻留在内存中,不必再经过编译和优化,所以执行速度快。在有大量批处理的PL/SQL语句要重复执行的时候,使用存储过程可以极大地提高运行效率。

(2)模块化的程序设计。存储过程经过了一次创建以后,可以被调用无数次。用户可以独立于应用程序而对存储过程进行修改。可以按照独特的功能模式设计不同的存储过程以供使用。

(3)减少网络通信量。存储过程中可以包含大量的PL/SQL语句,但存储过程作为一个独立的单元来使用。在进行调用时,只需要使用一个语句就可以实现,所以大大减少了网络上数据的传输。

(4)保证系统的安全性。可以设置用户通过存储过程对某些关键数据进行访问,但不允许用户直接使用PL/SQL语句或其他方式对数据进行访问。

Y), 使得X→Y,Y→Z成立,Y

X,

3.试述在具有检查点的恢复技术中,动态维护日志文件的步骤。

动态维护日志文件的方法是周期性地执行如下操作:建立检查点,保存数据库状态。具体步骤如下: (1)将当前日志缓冲区中的所有日志记录写入磁盘的日志文件上; (2)在日志文件中写入一个检查点记录;

(3)将当前数据缓冲区的所有数据记录写入磁盘的数据库中; (4)把检查点记录在日志文件中的地址写入一个重新开始文件。

4.试述数据库设计过程。

这里只概要列出数据库设计过程的六个阶段:(1)需求分析;(2)概念结构设计;(3)逻辑结构设计;(4)数据库物理设计;(5)数据库实施;(6)数据库运行和维护。这是一个完整的实际数据库及其应用系统的设计过程。不仅包括设计数据库本身,还包括数据库的实施、运行和维护。设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。

三、理论应用题(每小题10分,共30分。)

1. 若有关系模式R(W,X,Y,Z),F ={X→Z,WX→Y}。试问关系R属于第几范式?

R是1NF。侯选码为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主属性对侯选码的部分函数依赖。

2.设有依赖集:F={AB→C,C→A,BC→D,D→EG,BE→C,CG→BD,CE→AG},计算其等价的最小依赖集。 首先将右边属性单一化,结果为:

F1={AB→C,C→A,BC→D,ACD→B,D→E,D→G,BE→C,CG→B,CG→D,CE→A,CE→G} 其次在F1 中去掉多余的函数依赖,CG→B。

F2= {AB→C,C→A,BC→D,ACD→B,D→E,D→G,BE→C,CE→A,CE→G}

最后去掉左边多余的属性。对于CE→A 可去掉E;对于ACD→B,可去掉A。得到: F3= {AB→C,C→A,BC→D,CD→B,D→E,D→G,BE→C,CG→D,CE→G}

3.今有3个事务的一个调度r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A),该调度是冲突可串行化的调度吗?为什么?

是,因为该调度可交换为r3(B)w3(B)r2(B)r2(A)w2(B) r1(A)r1(B)w1(A),这是一个串行调度。因此它是一个冲突可串行化调度。 四、实践应用题(共20分)

用SQL语句在SQL Server2000下实现如下功能。所用数据库表结构如下:

student(学生表):(sno,学号,9字符;sname,姓名,最多4个汉字;ssex,性别,一个汉字;sage,年龄,整数;sdept,所在院系,不超过十个汉字)。

course(课程表):(cno,课程号,5字符;cname,课程名,最多10字符;cpno,先修课号,5字符;credit,学分,整数)。

sc(学生选课表):(sno,学号,9字符;cno,课程号,5字符;grade,成绩,整数)。 1.建立表sc,指定外键sno参照学生表的sno,当删除学生表时级联删除sc表相应记录。 2.删除计算机系(‘CS’)所有男生的选课记录。

3.把查询student表和修改学生学号的权限授予用户u2,并允许将此权限再授予其他用户。

4.查询至少选修了学生‘200215120’选修的全部课程的学生号码。

5.用嵌入式SQL语句实现,某个学生新选修了某门课程,将有关课程号在主变量couno中,成绩主变量为gr,对应指示变量为grid,成绩初始为空。

解:1.EATE TABLE sc (sno CHAR(5), Cno CHAR(5), Grade INT,

FRIENGN KEY (sno) REFREENCES student(sno) ON DELETE CASCADE )

2.DELETE FROM SC

WHERE ‘CS’=

(SELECT sdept FROM student

WHERE student.sno=sc.sno AND Ssex=‘男’) 3.GRANT UPDATE(sno),SELECT ON student TO U2

WITH GRANT OPTION 4.SELECT DISTINCT Sno FROM SC X

WHERE NOT EXISTS (SELECT * FROM SC Y

WHERE Y.Sno=‘200215120’AND

NOT EXISTS

(SELECT * FROM SC Z

WHERE Z.Sno=X.Sno AND Z.Cno=Y.Cno)) 5.grid=-1;

EXEC SQL INSERT

INTO SC(sno,cno,grade)

VALUES(:stdno,:couno,:gr:grid);

五、综合应用题(每小题10分,共20分。)

1.对关系模式R(U,V,W,X,Y,Z),其函数依赖集F={U→V,W→Z,Y→U,WY→X},现有下列分解,分别判别是否为无损连接分解。 (1)ρ1={WZ,VY,WXY,UV}; (2)ρ2={UVY,WXYZ}。

(1)ρ1的初始判定表如下:

WZ VY WXY U b11 b21 b31 V b12 a2 b32 W a3 b23 a3 X b14 b24 a4 Y b15 a5 a5 Z a6 b26 b36 UV a1 a2 b43 b44 b45 b46 最终判定表如下: WZ VY WXY UV U b11 b21 b21 a1 V b12 a2 a2 a2 W a3 b23 a3 b43 X b14 b24 a4 b44 Y b15 a5 a5 b45 Z a6 b26 a6 b46 没有一行全为a,故不是无损连接

(2)R1∩R2={Y},R1-R2={UV},R2-R1={WXZ},而Y→UV属性F+,故是无损连接。

2.设计一个商业销售记账数据库,一个顾客(顾客姓名、单位、电话号码)可以买多种商品,一种商品(商品名称、型号、单价)供应多个顾客。试解决如下问题: (1)画出E-R图;

(2)将E-R图转换为关系模式,并指出每个关系模式的主码。 解:E-R图如下:

转化为关系模式为:

顾客转化为: 顾客(顾客编号,顾客姓名,单位,电话号码),码为:顾客编号; 商品实体转化为: 商品(商品编号,商品名称,型号,价格),码为(商品编号);

二者的联系转化为:购买(顾客编号,商品编号,购买时间,数量),码为(顾客编号,商品编号)。

单位 电话号码 数量 顾客姓名 顾客 顾客编号 购买时间 顾客编号 m 购买 n 商品 商品名称 型号 价格

★数据库系统东北师范大学离线作业与答案

离线考核《数据库系统》满分100分一、名词解释题(每小题2分,共10分。)1.数据库系统数据库系统(DataBaseSystem,DBS):是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。2.数据库安全性数据库的安全性是
推荐度:
点击下载文档文档为doc格式
78m5n9g0x29kcek7hm3l8mqar1ru5x013bz
领取福利

微信扫码领取福利

微信扫码分享