当前位置:文档之家› 第十章 数据库完整性 练习题和答案

第十章 数据库完整性 练习题和答案

第十章 数据库完整性 练习题和答案
第十章 数据库完整性 练习题和答案

第十章数据库完整性

一、选择题

1.完整性检查和控制的防范对象(AC ),防止它们进入数据库。

安全性控制的防范对象是(BD ),防止他们对数据库数据的存取。

A. 不合语义的数据

B. 非法用户

C. 不正确的数据

D. 非法操作

2.下述哪个是SQL语言中的数据控制命令()。

A. GRANT

B. COMMIT

C. UPDATE

D. SELECT

3.下述SQL语言中的权限,哪一个允许用户定义新关系时,

引用其他关系的主码作为外码()。

A. INSERT

B. DELETE

C. REFERENCES

D. SELECT

二、简答题

1.什么是数据库的完整性?

答:数据库的完整性是指数据的正确性和相容性。

2.数据库的完整性概念与数据库的安全性概念有什么区别和联系?

答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。

前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garbage In Garbage Out)所造成的无效操作和错误结果。

后者是保护数据库防止恶意的破坏和非法的存取。

也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。

3.什么是数据库的完整性约束条件?可分为哪几类?

答:完整性约束条件是指数据库中的数据应该满足的语义约束条件。

一般可以分为六类:

静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。

静态列级约束是对一个列的取值域的说明,包括以下几方面:

1. 对数据类型的约束,包括数据的类型、长度、单位、精度等

2. 对数据格式的约束

3. 对取值范围或取值集合的约束。

4. 对空值的约束

5. 其他约束

静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。

静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。常见的静态关系约束有:

1. 实体完整性约束。

2. 参照完整性约束。?

3. 函数依赖约束。

动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:

1. 修改列定义时的约束

2. 修改列值时的约束

动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。

动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。

详细内容可以参见《概论》10.1中的介绍。

4.DBMS的完整性控制机制应具有哪些功能?

答:DBMS的完整性控制机制应具有三个方面的功能:

1). 定义功能,即提供定义完整性约束条件的机制。

2. 检查功能,即检查用户发出的操作请求是否违背了完整性约束条件。

3). 违约反应:如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。

5.RDBMS在实现参照完整性时需要考虑哪些方面?

答:

RDBMS在实现参照完整性时需要考虑以下几个方面:

1)外码是否可以接受空值

2)删除被参照关系的元组时的考虑,这时系统可能采取的作法有三种:

(a)级联删除(CASCADES);

(b)受限删除(RESTRICTED);

(c)置空值删除(NULLIFIES)

3)在参照关系中插入元组时的问题,这时系统可能采取的作法有:

(a)受限插入

(b)递归插入

4)修改关系中主码的问题

一般是不能用UPDATE语句修改关系主码的。如果需要修改主码值,只能先删除该元组,然后再把具有新主码值的元组插入到关系中。

如果允许修改主码,首先要保证主码的唯一性和非空,否则拒绝修改。然后要区分是参照关系还是被参照关系。

详细讨论可以参见《概论》10.2。

6. 假设有下面两个关系模式:

职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;

部门(部门号,名称,经理名,电话),其中部门号为主码;

用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。

CREATE TABLE DEPT

(Deptno NUMBER(2),

Deptname VARCHAR(10),

Manager VARCHAR(10),

PhoneNumber Char(12)

CONSTRAINT PK_SC PRIMARY KEY (Deptno));

CREATE TABLE EMP

(Empno NUMBER(4),

Ename VARCHAR(10),

Age NUMBER(2),

CONSTRAINT C1 CHECK (Age《=60),

Job VARCHAR(9),

Sal NUMBER(7,2),

Deptno NUMBER(2),

CONSTRAINT FK_DEPTNO

FOREIGN KEY (Deptno)

REFERENCES DEPT(Deptno));

7.关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的?

答:

对于违反实体完整性和用户定义的完整性的操作一般都采用拒绝执行的方式进行处理。而对于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。具体的处理可以参见上面第5题或《概论》10.2中相应部分。

*8. 试述你了解的某一个实际的DBMS产品的完整性控制策略。

答:

不同的DBMS产品以及同一产品的不同版本的完整性控制策略各不相同,读者要去了解某一个DBMS产品的完整性控制策略。

《概论》上10.3 简单介绍了有关ORACLE数据库的完整性控制策略。

数据库练习题答案

第四章练习题 一、选择题 1、设有两个关系R(A,B)和S(B,C),与下列SELECT语句 SELECT A,B FROM R WHERE B NOT IN(SELECT B FROM S WHERE C='C56'); 等价的关系代数表达式是 [ C] A.πA,B(σC≠'C56'(R?S))B.πA,B(R ? S) C≠'C56' C.R-πA,B(σC= 'C56'(R?S))D.R-πA,B(σC≠'C56'(R?S)) 2、嵌入式SQL的预处理方式,是指[ B] A.识别出SQL语句,加上前缀标识和结束标志 B.把嵌入的SQL语句处理成函数调用形式 C.对源程序进行格式化处理 D.把嵌入的SQL语句编译成目标程序 3、SQL中,“DELETE FROM 表名”表示 [ A] A.从基本表中删除所有元组B.从基本表中删除所有属性 C.从数据库中撤消这个基本表D.从基本表中删除重复元组 4、SQL中,聚合函数COUNT(列名)用于[ C] A.计算元组个数B.计算属性的个数 C.对一列中的非空值计算个数D.对一列中的非空值和空值计算个数 5、在传统SQL技术中,使用“ORDER BY”子句的SELECT语句查询的结果,实际上为 [ B] A.数组 B.列表 C.包 D.集合 6、在数据库中,能提高查询速度的是(C ) A. 数据依赖 B. 视图 C. 索引 D. 数据压缩 7、语句 delete from sc 表明( A ) A. 删除sc中的全部记录 B. 删除基本表sc C. 删除基本表sc中的列数据 D. 删除基本表sc中的部分行 8、在DB应用中,一般一条SQL 语句可产生或处理一组记录,而DB主语言语句一般一次只能处理一条记录,其协调可通过( B )实现。 A. 指针 B. 游标 C. 数组 D. 栈 9、在下列基本表的定义中,数值5表示( C ) CREATE TABLE student (Sno char(5) not null unique,Sname char(2)); A. 表中有5条记录 B. 表中有5列 C. 表中字符串Sno 的长度 D. 表格的大小 10、在视图上不能完成的操作是( C )

数据库原理试题及答案

数据库原理试题答案(B卷) 一、填空题(每题 2 分,共 20 分) 1、实体 2、日志文件 3、完整性 4、关系 5、关系演算 6、外模式 / 模式 7、更新 8、集成的 9、先来先服务 10、人工智能 二、选择题(每题 1 分) 1 、C 2 、 D 3 、 B 4 、 A 5 、 B 6 、 C 7 、 C 8 、 C 9 、 B 10 、 C 三、简答题(每题 5 分,共 20 分) 1 、答案要点:数据库系统中的常见故障有:事务内部的故障(事务故障)( 1 分)、系统故障( 1 分)、介质故障( 2 分)、计算机病毒( 1 分)。 2 、答案要点:数据模型通常由数据结构( 1 分)、数据操作( 2 分)、完整性约束( 2 分)三部分组成。 3 、答案要点:不是所有的视图都是可更新的( 2 分);因为有些视图的更新不能唯一地有意义地转换成对相应基本表地更新( 3 分)。 4 、答案要点:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行执行它们时的结果相同( 5 分)。 四、(共 10 分) 1 、 80 , 90 2 、 T 1 T 2 Slock A 读 A = 50 Y = A Unlock A Xlock A A=Y-10 Slock A 写回 A = 40 等待 Unlock A 等待 读 A = 40 Y = A Unlock A Xlock A A=Y × 2 写回 A = 80 Unlock A

五、(共 10 分) 六、(共 20 分) 1 、关系代数: (1)sno ( cno =‘ 2 ' (SC) )(2分) (2) Sno,Sn ( Cn=' 数据库概论 ' ) (2分) (3) Sno,SN (S ( Cno , sno (SC) ÷ Cno ( C )) ) (2分) ALPHA 语言 ? GET W(SC.SNO): https://www.doczj.com/doc/6612970756.html,O=' 2' (2分) ? RANGE C X SC Y GET W (S.SNO.S.SN): X( Y(https://www.doczj.com/doc/6612970756.html,O=https://www.doczj.com/doc/6612970756.html,O ^ Y.SNO=S.SNO ^ https://www.doczj.com/doc/6612970756.html,=' 数据库概论 ' (2分) ? RANGE C X SC Y GET W(S.SNO,S.SN): X( Y(https://www.doczj.com/doc/6612970756.html,O=https://www.doczj.com/doc/6612970756.html,O ^ Y.SNO=S.SNO)) (2分) 2 、( 1 ) SELECT COUNT(*) FROM STUDENT (2分) (2) SELECT SNO FROM SC GROUP BY SNO HAVING COUNT(*)>5 (3分) (3) DELECT FROM SC WHERE https://www.doczj.com/doc/6612970756.html,O IN (SELECT https://www.doczj.com/doc/6612970756.html,O FROM C WHERE CN=' 数据结构 ') DELETE FROM C WHERE CN= ‘数据结构' (3分) 七、(共 10 分) 科室(科室代码,科室名称) (1分) 医生(工号,姓名,名称,聘用日期,聘用期限,科室) (1分) 病人(病历号,姓名,年龄,工作单位) (1分) 就诊(医生工号,病历号,就诊日期) (2分) 一、填空题(每空 2 分,共 20 分) 1、关系中主码的取值必须唯一且非空,这是由 ___________ 完整性规则决定的。 2、当数据库被破坏后,如果事先保存了数据库副本和 ________________ ,就有可能恢复数据库。 3、数据库的 ____________ 是指数据库的正确性和相容性。 4、关系数据操作语言的特点是:操作对象与结果均为 ___________ 、操作的非过程性强、语言一体化、并且建立在数学理论基础之上。 5、SQL 是一种介于关系代数和 _____________ 之间的结构化的查询语言。 6、对于每一个外模式,数据库系统都有一个 _______________ 映象,它定义了该外模式与模式之间的对应关系。 7、视图是一个需表,它一经定义就可以和基本表一样被查询,但 _________ 操作将有一定的限制。 8、数据仓库是一个面向主题的、 _____________ 、不可更新的、随时间不断变化的数据集合。 9、避免活锁的简单方法是采用 _____ 的策略。 10、知识库系统和主动数据库系统是将数据库技术和 ________ 技术相结合产生的。 二、选择题(每小题 1 分,共 10 分) 1、SQL 中,下列涉及空值的操作,不正确的是 ( )

MySQL数据库考试试题及答案

专业:移动通信科目:MySQL数据库 一、单项选择题 1.以下聚合函数求数据总和的是( ) A.MAX B.SUM C.COUNT D.AVG 答案:B 2.可以用( )来声明游标 A.CREATE CURSOR B.ALTER CURSOR C.SET CURSOR D.DECLARE CURSOR 答案:D 3.SELECT语句的完整语法较复杂,但至少包括的部分是( ) A.仅SELECT B.SELECT,FROM C.SELECT,GROUP D.SELECT,INTO 答案:B 4.SQL语句中的条件用以下哪一项来表达( ) A.THEN B.WHILE C.WHERE D.IF 答案:C 5.使用CREATE TABLE语句的( )子句,在创建基本表时可以启用全文本搜索A.FULLTEXT B.ENGINE C.FROM D.WHRER 答案:A 6.以下能够删除一列的是( ) A.alter table emp remove addcolumn B.alter table emp drop column addcolumn C.alter table emp delete column addcolumn D.alter table emp delete addcolumn 答案:B 7.若要撤销数据库中已经存在的表S,可用()。 A.DELETE TABLE S B.DELETE S C.DROP S D.DROP TABLE S 答案:D

8.查找表结构用以下哪一项( ) A.FIND B.SELETE C.ALTER D.DESC 答案:D 9.要得到最后一句SELECT查询到的总行数,可以使用的函数是( ) A.FOUND_ROWS B.LAST_ROWS C.ROW_COUNT D.LAST_INSERT_ID 答案:A 10.在视图上不能完成的操作是( ) A.查询 B.在视图上定义新的视图 C.更新视图 D.在视图上定义新的表 答案:D 11.UNIQUE惟一索引的作用是( ) A.保证各行在该索引上的值都不得重复 B.保证各行在该索引上的值不得为NULL C.保证参加惟一索引的各列,不得再参加其他的索引 D.保证惟一索引不能被删除 答案:A 12.用于将事务处理写到数据库的命令是( ) A.insert B.rollback C.commit D.savepoint 答案:C 13.查找条件为:姓名不是NULL的记录( ) A.WHERE NAME ! NULL B.WHERE NAME NOT NULL C.WHERE NAME IS NOT NULL D.WHERE NAME!=NULL 答案:C 14.主键的建立有( )种方法 A.一 B.四 C.二 D.三 答案:D 15.在视图上不能完成的操作是( ) A.更新视图数据

数据库复习题答案

(说明:仅仅代表个人观点,答案正确率为98%,可能会有错的地方,有问题请问度娘) 复习参考资料 选择题 :30分(15题) 名词解释:20分(4题) 综合题:50分 一、选择题: 1. 数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和( C)。 A. 系统分析员 B. 程序员 C. 数据库管理员 D. 操作员 2. 数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是( A)。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 3. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是( D)。 I.人工管理阶段 II.文件系统阶段 III.数据库阶段 A. I 和 II B. 只有 II C. II 和 III D. 只有 I 4. 下列四项中,不属于数据库系统特点的是(C )。 A. 数据共享 B. 数据完整性 C. 数据冗余度高 D. 数据独立性高 5. 数据库系统的数据独立性体现在( B)。 A. 不会因为数据的变化而影响到应用程序 B. 不会因为数据存储结构与数据逻辑结构的变化而影响应用程序

C. 不会因为存储策略的变化而影响存储结构 D. 不会因为某些存储结构的变化而影响其他的存储结构 6. 描述数据库全体数据的全局逻辑结构和特性的是(A )。 A. 模式 B. 内模式 C. 外模式 D. 以上三种 7. 要保证数据库的数据独立性,需要修改的是( C)。 A. 模式与外模式 B. 模式与内模式 C. 三级模式之间的两层映射 D. 三层模式 8. 要保证数据库的逻辑数据独立性,需要修改的是( A)。 A. 模式与外模式之间的映射 B. 模式与内模式之间的映射 C. 模式 D. 三级模式 9. 用户或应用程序看到的那部分局部逻辑结构和特征的描述是( C)模式。 A. 模式 B. 物理模式 C. 子模式 D. 内模式 10. 下述( D)不是DBA数据库管理员的职责。 A. 完整性约束说明 B. 定义数据库模式 C. 数据库安全 D. 数据库管理系统设计 11. 概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是(D )。 A. 层次模型 B. 关系模型 C. 网状模型 D. 实体-关系模型 12. 区分不同实体的依据是(B )。 A. 名称 B. 属性 C. 对象 D. 概念 13. 关系数据模型是目前最重要的一种数据模型,它的三个要素分别是(B )。 A. 实体完整性、参照完整性、用户自定义完整性 B. 数据结构、关系操作、完整性约束 C. 数据增加、数据修改、数据查询 D. 外模式、模式、内模式 14. 在(A )中一个结点可以有多个双亲,结点之间可以有多种联系。 A. 网状模型

第10章 数据库恢复技术

一、单项选择题 1. 在DBMS中实现事务持久性的子系统是( )。 A.安全管理子系统 B.完整性管理子系统 C.并发控制子系统 D.恢复管理子系统 [参考答案] 恢复管理子系统 2. 后援副本的作用是( )。 A.保障安全性 B.一致性控制 C.故障后的恢复 D.数据的转储 [参考答案] 故障后的恢复 3. 事务日志用于保存( )。 A.程序运行过程 B.程序的执行结果 C.对数据的更新操作 D.数据操作 [参考答案] 对数据的更新操作 4. 数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括( )。 A.数据字典、应用程序、审计档案、数据库后备副本 B.数据字典、应用程序、审计档案、日志文件 C.日志文件、数据库后备副本 D.数据字典、应用程序、数据库后备副本 [参考答案] 日志文件、数据库后备副本 5. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为( )。 A.介质故障 B.运行故障 C.系统故障 D.事务故障 [参考答案] 介质故障 6. SQL语言中用( )语句实现事务的回滚。 A.CREATE TABLE B.ROLLBACK C.GRANT和REVOKE https://www.doczj.com/doc/6612970756.html,MIT [参考答案] ROLLBACK

7. SQL语言中的COMMIT语句的主要作用是( )。 A.结束程序 B.返回系统 C.提交事务 D.存储数据 [参考答案] 提交事务 8. 事务的持续性是指( )。 A.事务中包括的所有操作要么都做,要么都不做; B.事务一旦提交,对数据为的改变是永久的; C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的; D.事务必须是使数据库从一个一致性状态变到另一个一致性状态; [参考答案] 事务一旦提交,对数据为的改变是永久的; 9. 表示两个或多个事务可以同时运行而不互相影响的是( )。 A.原子性 B.一致性 C.隔离性 D.持久性 [参考答案] 隔离性 10. 一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是( )。 A.原子性 B.一致性 C.隔离性 D.持久性 [参考答案] 原子性 二、填空题 1. 数据库系统在运行过程中,可能会发生故障。故障主要有事务故障、( )、介质故障和( )四类。 [参考答案] 系统故障计算机病毒 2. ( )是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。 [参考答案] 事务 3. 若数据库中只包含成功事务提交的结果,则此数据库就称为处于( )状态。 [参考答案] 一致 4. ( )用来记录对数据库中数据进行的每一次更新操作。 [参考答案] 日志文件

数据库试题及答案

《数据库》试题 使用教材:Visual FoxPro 数据库应用 试题范围:全册 出版社:高等教育出版时版次:第3版 学校名称:文县职业中专 一、选择题 1、在有关数据库的概念中,若干记录的集合称为() A. 文件 B. 字段 C. 数据项 D. 表 2、在Visual FoxPro中,向数据库文件中追加数据使用语句() A、INSERT B、REPLACE C、APPEND D、ADD 3、在Visual FoxPro中,删除数据库的所有记录,仅保留库结构的命令是( ) A、delete all B、pack C、recall D、zap 4、在Visual FoxPro中,分屏显示当前数据库中年龄字段大于20的所有记录,正确的命令为( ) A、display all for nl>20 B、display all while nl>20 C、list for nl while nl>20 D、list while nl>20 5、在Visual FoxPro中,skip命令移动记录指针的基准是( ) A、第一条记录 B、当前记录 C、指定纪录 D、库文件尾6、逻辑运算符在运算时的优先顺序是() A.NOT→AND→OR B.AND→NOT→OR C.OR→NOT→AND D.从左至右按先后次序 7、在关系运算中,查找满足一定条件的元组的运算称之为()A. 投影 B. 选择 C. 关联 D. 复制 8、下面的赋值表达式不正确的是() A.STORE "HELLO WORLD!" TO STR B. STORE 123456 TO

A1,B1 C.WORD="FOXPRO" D.STORE 12,34 TO A2,B29、不能作为索引关键字的数据类型是() A.数值型 B.备注型 C.日期型 D.字符型 10、当前表中含xm(姓名,字符型)字段,显示姓“李”的记录的命令是() A.DISP FOR "李"=xm B.DISP FOR xm=李 C.DISP FOR SUBS(xm,1,1)= ‘李’ D.DISP FOR SUBS(xm,1,2)=‘李’ 11、用命令DIMENSION A(4,5)定义后,A数组中共有()个数据元素。 A. 4 B. 5 C. 9 D. 20 12、在Visual FoxPro的一个工作区中,同一时刻最多能打开( )个库文件。 A、10 B、1 C、任意多 D、256 13、33.结构化程序设计中的三种基本结构是顺序结构、分支结构和() A、选择结构 B、循环结构 C、混合结构 D、跳转结构 14、假定STUDENT.DBF学生数据库文件中前六条记录均为男生的记录,执行以下命令序列: USE.STUDENT GOTO 3 LOCATE NEXT 3 FOR 性别="男" 后,记录指针定位在( ) A、第3条记录上 B、第4条记录上 C、第5条记录上 D、第6条记录上 15、68.下面有关表索引的几种说法,正确的是() A.索引和排序一样,它改变记录的物理顺序。

数据库笔试题目大全+很有用的

姓名:日期: 1、事务是什么? 2、oracle中truncate和delete命令有何区别? 3、Oracle中char和varchar2数据类型有什么区别?有数据”test”分别存放到char(10)和varchar2(1 0)类型的字段中,其存储长度及类型有何区别? 4、参见如下表结构 出版社: 出版社代码char(2), 出版社名称varchar2(32) 图书: 图书编号char(8),

图书名称varchar2(128), 出版社代码char(2), 作者代号char(4), 图书简介varchar2(128) 作者: 作者代号char(4), 作者名称varchar2(10), 性别char(1), 年龄number(3), 文学方向varchar2(64) 获奖名单: 获奖日期date, 获奖人员char(4) 编写SQL语句,找出“作者”库中没有出现在“获奖名单”库中所有作者信息的SQL语句(提示:使用not in、not exists以及外关联三种方法,并说明哪种方法最优。

5、Oracle数据库表存在伪列rowid,请利用rowid编写一个SQL语句,从以下记录中找到唯一记录,并将其flag列更新为Y No name sex flag 1 张三 1 N 1 张三 1 N 1 张三 1 N 6、Oracle中,需要在查询语句中把空值(NULL)输出为0,如何处理? 7、见第四题“获奖名单”表,写出SQL语句,查询出在上一个月获奖的人员。

8、见第四题“图书”表,在表上对图书名称、出版社代码、作者代号创建了组合索引,请问在执行如下语句时会不会利用到索引。 Select * from 图书where 图书名称=?xxxx? Select * from 图书where 图书名称=?xxxx?and 出版社代码=?bb? Select * from 图书where 图书名称=?xxxx?and 作者代号=?ddd? Select * from 图书where 出版社代码=?yyy? 9、编写一个简单的Oracle存储过程,输出参数必须有一个是结果集。 专家对本试卷的分析: 第一,这张笔试卷从题目的考点上来看,属于基础知识类的; 第二,从难度上分析属于中等; 第三,从题目的设置上来看,该公司的主要用意是考察笔试者的工作经验和项目经验,尽管是基础知识,但是只要没做过开发工作,想回答上来并不容易;

数据库综合练习(一)习题及答案

1.现有如下关系模式: R(A#,B#,C,D,E) 其中:A#B#组合为码, R上存在的函数依赖有A#B#→E,B#→C,C→D 1)该关系模式满足2NF吗为什么 2)如果将关系模式R分解为: R1(A#,B#,E) R2(B#,C,D) 指出关系模式R1和R2的码,并说明该关系模式最高满足第几范式(在1NF~BCNF之内)。 3)将关系模式R分解到BCNF。 解: 1)不是2范式,因为C部分依赖于码A#B# 2)R1的码为A#B#,R2的码为B# R1最高位BCNF,R2最高为2NF。 3)R1(A#,B#,E) R21(B#,C) R22(C,D) 2.设有一个关系模式R(S#, C#, G, TN, D), 其属性S#为学号,C#课程,G成绩,TN任课教师,D教师所在系。其中学号和课程号分别与其代表的学生和课程一一对应;学生选修的课程都有成绩;每门课程只有一个任课教师,每个教师可以有多门课程,教师没有重名,一个教师只属于一个系。 (1) 试根据上述语义确定函数依赖集。 (2) 关系R属于第几范式 (3)试将关系R规范为第3范式,并说明理由。 解:R(S#,C#,G,TN,D) 由题意可得关系模式R的函数依赖集: (1)F={S#C#->G, S#C#->TN, S#->D, C#->TN, TN->D} (2)函数依赖集存在部分函数依赖,关系模式R属于1NF。 (3)R分解为如下关系模式: R1(S#,C#,G) 不存在部分函数依赖及传递函数依赖,满足3NF。 R2(S#,D) 不存在部分函数依赖及传递函数依赖,满足3NF。 R3(C#,TN) 不存在部分函数依赖及传递函数依赖,满足3NF。 R4(TN,D) 不存在部分函数依赖集传递函数依赖,满足3NF。 3.某企业有多个下属单位,每个单位有多个员工。一个员工仅属于一个单位,且一个员工仅在一个工程中工作;一个工程中有多个员工。有多个供应商为各个工程供应设备。单位属性有单位名,电话。员工属性有:员工号、姓名、性别。设备属性有:设备号、产地。供应商属性有姓名、电话。工程属性有:工程名,地点。 要求完成:1. 根据上段对企业的描述建立企业E-R模型。 2. 把E-R模型转换为相应的关系模式。 3. 试分析各关系模式满足第几范式

数据库试题及答案_

笔试样卷一 参考答案 一、简答题(25分) 1.数据库阶段数据管理的主要特点是什么? 2.解释DB、DBMS、DBS三个概念? 3.什么是物理数据独立性和逻辑数据独立性? 4.试说明DBMS的主要功能? 5.在ER模型转换为关系模型时,联系类型要根据不同的情况作不同的处理,试说明之。 二、计算题(20分) 1.设有关系R和S R: S: A B C A B C 3 6 7 3 4 5 2 5 7 7 2 3 7 3 4 4 4 3 列表计算R∪S、R-S、R×S、π 3,2(S)、δ B<5 (R)。(5分) 2.设有三个关系 S (SNO, SNAME, AGE, SEX, SDEPT) SC (SNO, CNO, GRANDE) C (CNO, CNAME, CDEPT, TNAME) 试用关系代数表达式表示下列查询

(1)检索LIU老师所授课程的课程号、课程名 (2)检索年龄大于23岁的男学生的学号和姓名 (3)检索学号为S3的学生所学课程的课程名和认课教师姓名 (4)检索WANG同学不学的课程的课程号 (5)检索至少选修了两门课程的学生的学号(10分) 三、设有三个基本表(45分) S (SNO, SNAME, AGE, SEX, SDEPT) SC (SNO, CNO, GRANDE) C (CNO, CNAME, CDEPT, TNAME) 1.试用T-SQL的查询语句表达下列查询 (1)检索LIU老师所授课程的课程号、课程名 (2)检索年龄大于23岁的男学生的学号和姓名 (3)检索学号为S3的学生所学课程的课程名和认课教师姓名 (4)检索WANG同学不学的课程的课程号 (5)检索至少选修了两门课程的学生的学号(10分) 2.试用T-SQL的查询语句表达下列查询 (1)统计有学生选修的课程的门数 (2)求选修C4课程的学生的年龄 (3)求LIU老师所授课程的每门课程的学生的平均成绩 (4)统计每门课程的学生选修人数 (5)求年龄大于所有女同学年龄的男学生的姓名和年龄(10分)3.试用T-SQL更新语句完成下列更新操作 (1)往表S中插入一个学生资料(‘S9’, ‘WU’, 18)

数据库笔试题 - 答案

XXXX感谢您对本套试题的回答,首先请您填写上您的姓名(____________),本套试题将作为XXXX入职的参考,多谢您的重视。本套试题分三部分:填空题(10分)、选择题(20分),SQL 基础题(30)、简答题(20)、综合题(30)。时间60分钟,满分110分。 一、填空题(每题2分,共10分) 1. 索引字段值不唯一,应该使用的索引类型为( 普通索引 ) 2. 只有满足联接条件的记录才包含在查询结果中,这种联接为( 内联接) 3. E-R模型的组成包括那些元素( 实体 )( 属性)( 关系) 4. 事务所具有的特性有( 原子性)( 一致性)( 隔离性)( 持久性) 5、结构化程序设计的三种基本逻辑结构是(顺序结构),(选择结构),(循环结构)。 二、选择提(每题1分,共20分) 1、在删除整表数据,同时保留表结构时,采用( C )的效率比( A )要高; A. delete B. drop table C. truncate Table 2、数据库管理系统中,能实现对数据库中的数据进行插入/修改/删除的功能称为(C); A.数据定义功能 B.数据管理功能 C.数据操作功能 D.数据控制功能 3、2 4、在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过(B)。 A:候选键B:主键C:外键D:超键 4、数据库管理系统DBMS S是( D); A.信息管理的应用软件 B.数据库系统+应用程序 C.管理中的数据库 D.管理数据的软件 5、关系数据库中,实现表与表之间的联系是通过(B)。 A、实体完整性规 B、参照完整性规则 C、用户自定义的完整性 D、值域 6、设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型(B)。 A、m:n B、1:m C、m:1 D、1:1 7、设有课程和学生两个实体,每个学生可以选修多个课程,一个课程可以有多名学生选修,则课程与学生实体之间的联系类型( A )。 A、m:n B、1:m C、m:1 D、1:1 8、如果一个班只能有一个班长,而且一个班长不能同时担任其它班的班长,班级和班长两个实体之间的关系属于(D)。 A、m:n B、1:m C、m:1 D、1:1 9、索引字段值不唯一,应该选择的索引类型为( B )。 A:主索引 B:普通索引C:候选索引D:唯一索引 10、如果指定参照完整性的删除规则为"级联",则当删除父表中的记录时( C )。 A:系统自动备份父表中被删除记录到一个新表中 B:若子表中有相关记录,则禁止删除父表中记录 C:会自动删除子表中所有相关记录

数据库复习试题答案及解析

数据库复习试题答案及 解析 集团档案编码:[YTTR-YTPT28-YTNTL98-UYTYNN08]

一、选择题: 1、DB,DBMS和DBS三者的关系是(B) A、DB包括DBMS和DBS B、DBS包括DB和DBMS C、DBMS包括DBS和DB D、DBS与DB、DBMS无关 2、假定学生关系式S(S#,SNAME,SEX,AGE),课程关系式C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRAND)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系(D) A、S B、SC,C C、S,SC D、S,C,SC 3、将E-R图转换为关系模式时,如果两实体间的联系是m:n,下列说法正确的是(C) A、将m方主键(主码)和联系的属性纳入n方的属性中 B、将m方属性和n方属性中均增加一个表示级别的属性 C、增加一个关系表示联系,其中纳入m方和n方的主键(主码) D、将n方主键(主码)和联系的属性纳入m方的属性中 4、由SELECT—FROM—WHERE—GROUP—ORDER组成的SQL语句,在被DBMS处理时,各字句的执行次序为(C) A、SELECT—FROM—WHERE—GROUP—ORDER B、FROM —SELECT—WHERE—GROUP—ORDER C、FROM —WHERE—GROUP—SELECT—ORDER D、SELECT—FROM—GROUP—WHERE—ORDER 5、以下不是数据库技术所具备的特点是(D) A、数据结构化 B、数据冗余小 C、有较高的数据独立性 D、数据联系弱 6、在信息模型的“学生”尸体中,对每个学生的具体情况的描述,称为(A) A、实体值 B、实体型 C、属性值 D、属性型 7、关系数据库三级模式中的(B),可用视图实现。 A、内模式 B、外模式 C、存储模式 D、模式 8、可用于区别实体集中不同个体的属性或属性集合,称为该实体的(B) A、属性型 B、键 C、外部键 D、实体型 9、设有一个体育项目可以有多个运动员报名,一个运动员课参加多个项目,运动员与体育项目之间是(D) A、一对一的联系 B、一对多的联系 C、多对一的联系 D、多对多的联系 10、关系R与关系S只有1个公共属性,T1是R与S作等值连接的结果,T2是R与S作自然连接的结果, 则(D) A、T1的属性个数等于T2的属性个数 B、T1的属性个数小于T2的属性个数 C、T1的属性个数大于或等于T2的属性个数 D、T1的属性个数大于T2的属性个数 11、数据库系统是由应用程序、DBMS、DB以及DBA组成。其中核心部分是(C) A、应用程序 B、DBA C、DBMS D、DB 12、下列集函数中不忽略空值(NULL)的是(A) A、COUNT(*) B、MAX(列名) C、SUM(列名) D、AVG(列名) 13、一个关系中的候选关键字(B) A、至少一个 B、可多个 C、必须多个 D、至少3个 14、在数据库设计中,具有最小性、唯一性和非空性的是(B) A、索引 B、关系模型主关键字(主码) C、外关键字(外码) D、约束 15、常用的关系运算时关系代数和(C) A、集合代数 B、逻辑演算 C、关系演算 D、集合演算 16、在基本层次联系中,记录型之间的联系是(B) A、一对一联系 B、一对多联系 C、多对多联系 D、多对一联系 17、关于冗余数据的叙述中,不正确的是(C)

数据库习题及答案,第三版

2004-2005学年第二学期期末考试 D 2002级计算机科学与技术专业《数据库原理与应用》课程试题 一、选择题(15分,每空1分): 1 .数据库系统中,物理数据独立性( physical data independenee )是指 _ 。 A. 数据库与数据库管理系统的相互独立 B. 应用程序与DBMS 的相互独立 C. 应用程序与存储在磁盘上数据库的物理模式是相互独立的 D. 应用程序与数据库中数据的逻辑结构相互独立 2. _____________________ 数据库系统的特点是 、数据独立、减少数据冗余、避免数据不一 致和加强了数据保护。 A. 数据共享 B .数据存储 C.数据应用 D .数据保密 3. 数据库管理系统能实现对数据库中数据的查 询、 插入、修改和删除等操作的数据库语言称为 A. 数据定义语言(DDL ) B .数据管理语言 C.数据操纵语言(DML ) D .数据控制语言 4. 在关系代数的专门关系运算中,从表中取出满足条件的属性的操作称为①;从表中选出满足某种 条件的元组的操作称为②;_将两个关系中具有共同属性值的元组连接到一起构成新表的操作称为③。 A. 选择 B .投影 C.连接 D.扫描 5. _________________________ 关系模型中,一个候选码 。 A .可由多个任意属性组成 B. 至多由一个属性组成 C. 可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成 D. 必须由多个属性组成 7.数据库中只存放视图的 __________ 。 A .操作 B .对应的数据 C. 定义 D.限制 9.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限, O A. 可靠性 B. —致性 C.完整性 D .安全性 6. SQL 语言是 语言。 A .层次数据库 C .关系数据库 B. 网络数据库 D .非数据库 &关系数据库规范化是为解决关系数据库中 问题而引人的。 A .数据冗余 B. 提高查询速度 C.减少数据操作的复杂性 D .保证数据的安全性和完整性 这主要是为了实现数据库的

SQL Server数据库笔试题和答案

一单词解释(2分/个) 34分 Data 数据Database 数据库RDBMS 关系数据库管理系统GRANT 授权 REVOKE 取消权限DENY 拒绝权限DECLARE 定义变量PROCEDURE存储过程 事务Transaction 触发器TRIGGER 继续continue 唯一unqiue 主键primary key 标识列identity 外键foreign key 检查check 约束constraint 二编写SQL语句(5分/题) 50分(包含笔试题问题和解答答案) 1) 创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话Create table stu (学号int , 姓名varchar(8), 年龄int, 性别varchar(4), 家庭地址varchar(50), 联系电话int ); 2) 修改学生表的结构,添加一列信息,学历 Alter table stu add 学历varchar(6); 3) 修改学生表的结构,删除一列信息,家庭住址 Alter table stu drop column 家庭地址 4) 向学生表添加如下信息: 学号姓名年龄性别联系电话学历 1A22男123456小学 2B21男119中学 3C23男110高中 4D18女114大学 Insert into stu values(1,’A’,22,’男’,123456,’小学’) Insert into stu values(2,’B’,21,’男’,119,’中学’) Insert into stu va lues(3,’C’,23,’男’,110,’高中’) Insert into stu values(4,’D’,18,’女’,114,’大学’) 5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专” Update stu set 学历=’大专’ where 联系电话like ‘11%’ 6) 删除学生表的数据,姓名以C开头,性别为‘男’的记录删除 Delect from stu where 性别=’男’ and 姓名like ‘c%’ 7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号示出来

数据库复习题--参考答案

信息技术水平考试数据库应用(SQL Server)复习题 一单选题 1.下列选项中,属于发展最早的数据模型是( A )。 (A) 网状数据模型 (B) 关系数据模型 (C) 层次数据模型 (D) 面向对象数据模型 2. 进行自然连接运算的两个关系必须具有( C )。 (A) 相同的属性个数 (B) 相同的主码 (C) 公共属性 (D) 相同的元组 个数 3. 若关系模式R(A,B,C)上的函数依赖集F={A->B,B->C,A->C},则R的最高范式是 ( B )。 (A) 1NF (B) 2NF (C) 3NF (D) BCNF 4.若关系模式R(A,B,C,D,E)上的函数依赖集F={AB->C,A->D,A->E},为了满足BCNF,可以将R 分解为( B )。 (A) R1(A,B,C,D) R2(A,E) (B) R1(A,B,C) R2(A,D,E) (C) R1(A,B,C) R2(D,E) (D) R1(A,B) R2(A,C,D,E) 5.若将如下E-R模型转换为关系模式,则下列说法中正确的是( D )。 (A) 设计一个职员关系,将部门的所有属性放到职员关系中 (B) 设计一个部门关系,将职员的所有属性放到部门关系中 (C) 设计部门和职工两个关系,将职员的主码加入到部门关系中 (D) 设计部门和职工两个关系,将部门的主码加入到职员关系中 6.下列选项中,不属于数据库操纵语言(DML)的是( A )。 (A) ALTER (B) INSERT (C) DELETE (D) SELECT 7.下列关于查询排序的说法中正确的是( B )。 (A) ORDER BY子句后面只能跟一个字段名 (B) 排序操作不会影响表中存储数据的顺序 (C) ORDER BY子句中的默认排序方式为降序排列 (D) 只能对数值型字段进行排序 8.下列数据映像中,可以保证数据的物理独立性的是( D )。 (A) 外模式/模式 (B) 外模式/内模式 (C) 模式/内模式 (D) 外模式/概念模式 9.在SQL SERVER2000中,常用的通配符不包括( D )。 (A) % (B) _ (C) [ ] (D) { } 10.下列关于索引的说法中正确的是( C )。 (A) 一个表可以建立多个聚簇索引 (B) 索引只能建立在1个字段上 (C) 索引可以加快表之间连接的速度 (D) 可以使用ADD INDEX语句创建索引 11.在SQL SERVER2000中,可以用来删除视图的选项是( A )。 (A) DROP VIEW (B) DELETE VIEW (C) DESTORY VIEW (D) REMOVE VIEW SERVER2000中,下列选项不属于表的操作权限的是( A )。

数据库试题及答案汇编

《数据库技术与应用》样题 一、选择题( 共 30 分,1--20 每小题 1 分,21—25 每小题 2 分。下列各题 A )、B)、 C)、D)四个选项中,只有一个选项是正确的 ) 1 在 SQL Server 中,关于视图的正确叙述是 A)视图与数据库表相同,用来存储数据B)视图不能同数据库表进行连接操作 C)在视图上不能进行更新操作D)视图是从一个或多个数据库表导出的虚拟表 2 SQL 是那几个英文单词的缩写 A)Standard Query LanguageB)Structured Query Language C) Select Query LanguageD)以上都不是 3 不属于 SQL Server 系统全局变量的是()。 A 、@@ErrorB 、@@ConnectionC 、@@Fetch_StatusD 、@Records 4 下面描述错误的是() A 、每个数据文件中有且只有一个主数据文件 B 、日志文件可以存在于任意文件组中 C 、主数据文件默认为 primary 文件组 D 、文件组是为了更好地实现数据库文件组织 5 SQL Server 数据库文件有三类,其中主数据文件的后缀为( ) A 、.mdfB 、.ldfC 、.ndfD 、.idf 6、下面标识符不合法的是( ) A 、[my delete]B 、_mybaseC 、$moneyD 、trigger1 7 下面字符串能与通配符表达式[ABC]%a 进行匹配的是() A 、BCDEFB 、A_BCDC 、ABC_aD 、A% 8、下面对索引的相关描述正确的是()列值唯一的列适合间索引 A 、经常被查询的列不适合建索引B 、列值惟一的列适合建索引 C 、有很多重复值的列适合建索引D 、是外键或主键的列不适合建索引 9、在“连接”组中有两种连接认证方式,其中在( )方式下,需要客户端应用程序连接 时提供登录时需要的用户标识和密码。 A 、Windows 身份验证B 、SQL Server 身份验证 C 、以超级用户身份登录时D 、其他方式登录时 10、索引是在基本表的列上建立的一种数据库对象,它同基本表分开存储,使用它能够加快 数据的( )速度。 A 、插入B 、修改C 、删除D 、查询 在where 子句中出现频率较高的列应尽量创建索引 11、以下哪种情况应尽量创建索引( ) A 、在 Where 子句中出现频率较高的列B 、具有很多 NULL 值的列 C 、记录较少的基本表D 、需要更新频繁的基本表 12、域完整性用于保证给定字段中数据的有效性,它要求表中指定列的数据具有正确的数据 类型、格式和有效的( )。 A 、数据值B 、数据长度C 、取值范围D 、以上都不是 13 以下不属于表之间定义关系的是 A)一对一关系B) 一对多关系C) 多对多关系D) 少对多关系 14 目前数据库有三种基本的数据模型是 ________ 。 A 、 层次模型、网络模型、关系模型B 、对象模型、网络模型、关系模型 网络模型、对象模型、层次模型D 、层次模型、关系模型、对象模型 15 从“产品”表里查询出价格高于产品名称为“海天酱油”的产品的记录,此 SQL 语句为 A 、SELECT * FROM 产品WHERE 价格>海天酱油

数据库面试题答案

数据库 SQL面试题 1)谈一下数据库的索引的原理,如何发挥作用的?针对插入操作索引会起正面作用么? 索引类似于书的目录,主要用于提高查询效率,也就是按条件查询的时候,先查询索引,再通过索引找到相关的数据,索引相当于记录了对某个关键词,指定到不同的文件,或者文件里的不同位置的结构 索引会降低数据更新的效率,当插入、修改、删除时会引起索引结构的更新 2) 数据库表里如果数据行数很多,做分页查询,SQL如何书写? 3) 说说group by, having是做什么的,举一个group by的例子 4) 说说外连接和连接的区别 5) 事务是什么概念,举例说明 6) 一个表:emp(,性别,年龄,工作类型,领导,工资,部门) a) 列出每个部门的最高工资和最低工资 Select max(工资),min(工资) from emp group by部门 b) 列出各部门’工作类型’为’普通职员’的最低和最高工资 Select max(工资),min(工资) from emp group by部门 Where工作类型=’普通职员’ c) 列出高于本部门平均工资的员工,工资,部门 select ,工资,部门 from emp e1 where工资>( select avg(工资) from emp e2 where e2. 部门=e1.部门 ) 存储过程和函数的区别是什么? 答:存储过程是用户定义的一系列SQL语句的集合,涉及特定表或其他对象的任务,用户可以调用存储过程。而函数通常是数据库已定义的方法,它接受参数并返回某种类型的值,并且不涉及特定用户表。 4.事务是什么? 答:事务是作为一个逻辑单元执行的一系列操作。一个逻辑工作单元必须有4个属性,称为ACID(原子性、一致性、隔离性和持久性)属性,只有这样才能称为一个事务。 5.游标的作用是什么?如何知道游标已经到了最后? 答:游标用于定位结果集的行。通过判断全局变量FETCH_STATUS可以判断其是否到了最后。通常此变量不等于0表示出错或到了最后。

相关主题
文本预览
相关文档 最新文档