
数据库系统练习题2020奥鹏离线考核.doc
5页离线考核《数据库系统》满分100分一、名词解释题(每小题2分,共10分 1.数据库系统解:数据库系统(Database System),是由数据库及其管理软件组成的系统数据库系统是为适应数据处理的需要而发展起来的一种较为理想的数据处理系统,也是一个为实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质 、处理对象和管理系统的集合体2.数据库安全性解:数据库安全包含两层含义:第一层是指系统运行安全,系统运行安全通常受到的威胁如下,一些网络不法分子通过网络,局域网等途径通过入侵电脑使系统无法正常启动,或超负荷让机子运行大量算法,并关闭cpu风扇,使cpu过热烧坏等破坏性活动; 第二层是指系统信息安全,系统安全通常受到的威胁如下,黑客对数据库入侵,并盗取想要的资料数据库系统的安全特性主要是针对数据而言的,包括数据独立性、数据安全性、数据完整性、并发控制、故障恢复等几个方面3.3NF解:第三范式(Third Normal Form,3rd NF)就是指表中的所有数据元素不但要能唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其他的函数关系4. 封锁解:封锁是指事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁。
加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其它的事务不能更新此数据对象5. 数据库镜像解:数据库镜像是DBMS根据DBA的要求,自动把整个数据库或其中的关键数据复制到另一个磁盘上,每当主数据库更新时,DBMS会自动把更新后的数据复制过去,即DBMS自动保证镜像数据与主数据的一致性二、简答题(每小题5分,共20分1.试述强制存取控制方法为什么强制存取控制比自主存取控制更安全?解:强制存取控制方法中,对每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证对于任意对象,只有具有合法许可证的用户才可以存取因此强制存取控制相对比较严格MAC是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性2. 试述存储过程的优点解:1.模块化编程 2. 加快速度 3.减少网络流量 4.提高系统安全性 3. 试述在具有检查点的恢复技术中,动态维护日志文件的步骤解:动态维护日志文件的方法是周期性地执行如下操作:建立检查点,保存数据库状态具体步骤如下:(1)将当前日志缓冲区中的所有日志记录写入磁盘的日志文件上;(2)在日志文件中写入一个检查点记录;(3)将当前数据缓冲区的所有数据记录写入磁盘的数据库中;(4)把检查点记录在日志文件中的地址写入一个重新开始文件。
4.试述数据库设计过程解:(1)需求分析阶段:需求收集和分析,得到数据字典和数据流图zhidao2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示3)逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型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→BF2= {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表相应记录。
EATE TABLE sc(sno CHAR(5), Cno CHAR(5), Grade INT, FRIENGN KEY (sno) REFREENCES student(sno) ON DELETE CASCADE)2. 删除计算机系(‘CS’)所有男生的选课记录DELETEFROM SCWHERE ‘CS’= (SELECT sdept FROM student WHERE student.sno=sno AND Ssex=’男’)3. 把查询student表和修改学生学号的权限授予用户u2,并允许将此权限再授予其他用户 GRANT UPDATE(sno),SELECTON studentTO U2WIH GRANT OPTION 4. 查询至少选修了学生‘200215120’选修的全部课程的学生号码SELECT DISTINCT SnoFROM SC XWHERE NOT EXISTS (SELECT * FROM SC Y WHERE Y.Sno=’200215120’ANDNOT EXISTS (SELECT * FROM SC Z WHERE Z.Sno=.Sno AND Z.Cno=Y.Cno))5.用嵌入式SQL语句实现,某个学生新选修了某门课程,将有关课程号在主变量couno中,成绩主变量为gr,对应指示变量为grid,成绩初始为空。
解: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}解:2.设计一个商业销售记账数据库,一个顾客(顾客姓名、单位、号码)可以买多种商品,一种商品(商品名称、型号、单价)供应多个顾客试解决如下问题:(1)画出E-R图2)将E-R图转换为关系模式,并指出每个关系模式的主码。
