第五章 数据库完整性习题
数据库复习题,,,章附答案
第5章数据库完整性一、选择题:1、在数据库系统中,保证数据及语义正确和有效的功能是( D )A.并发控制 B.存取控制 C.安全控制 D.完整性控制2、关于主键约束以下说法错误的是(C )A. 一个表中只能设置一个主键约束B.允许空值的字段上不能定义主键约束C.允许空值的字段上可以定义主键约束D.、可以将包含多个字段的字段组合设置为主键3、在表或视图上执行除了(D )以外的语句都可以激活触发器。
A.InsertB. DeleteC. UpdateD.Create4、数据库的__B_ _是指数据的正确性和相容性。
A.安全性B.完整性C.并发控制D.恢复5、在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的_____C___约束。
A、实体完整性B、参照完整性C、用户自定义D、用户操作二、填空题1.数据库的完整性是指数据的①实体完整性 . ②参照完整性__和③用户定义完整性。
2、实体完整性是指在基本表中,。
答案:主属性不能取空值3、参照完整性是指在基本表中,。
答案:外码可以是空值或者另一个关系主码的有效值4、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就。
答案:拒绝此操作第6章关系数据理论一、选择题1、关系规范化中的删除操作异常是指①A ,插入操作异常是指②D 。
A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是A 。
A.关系规范化理论B.关系运算理论C.关系代数理论D.数理逻辑3、规范化过程主要为克服数据库逻辑结构中的插入异常,删除;异常以及C 的缺陷。
A.数据的不一致性B.结构不合理C.冗余度大D.数据丢失4、当关系模式R(A,B)已属于3NF,下列说法中 B 是正确的。
A.它一定消除了插入和删除异常B.仍存在一定的插入和删除异常C.一定属于BCNF D.A和C都是5、关系模型中的关系模式至少是 A A.1NF B.2NF C.3NF D.BCNF6、在关系DB中,任何二元关系模式的最高范式必定是 D A.1NF B.2NF C.3NF D.BCNF7、候选关键字中的属性称为 B 。
数据库第五章习题及答案
数据库第五章习题及答案本文档为数据库第五章的习题及答案,帮助读者巩固数据库相关知识。
习题1. 数据库的优点有哪些?数据库具有以下优点: - 数据共享:多个用户可以同时访问和共享数据库中的数据。
- 数据一致性:数据库提供事务管理能力,保证了数据的一致性。
- 数据持久性:数据在数据库中是永久存储的,不会因为系统关机或程序结束而丢失。
- 数据冗余度低:数据库通过规范化设计,减少了数据的冗余性,提高了数据的存储效率。
- 数据独立性:数据库支持数据与应用程序的独立性,提高了系统的灵活性和维护性。
- 数据安全性:数据库提供了用户权限管理和数据备份机制,保证了数据的安全性。
2. 数据库的三级模式结构是什么?数据库的三级模式结构包括: - 外模式(视图层):外模式是用户所看到的数据库的子集,用于描述用户对数据库的逻辑视图。
每个用户可以有不同的外模式来满足自己的需求。
- 概念模式(逻辑层):概念模式是全局数据库的逻辑结构和组织方式,描述了数据的总体逻辑视图。
概念模式独立于具体的应用程序,是数据库管理员的角度来看待数据库的。
- 内模式(物理层):内模式是数据库的存储结构和物理组织方式,描述了数据在存储介质上的实际存储方式。
3. 数据库的完整性约束有哪些?数据库的完整性约束包括: - 实体完整性约束:确保表的主键不为空,每个实体都能够唯一标识。
- 参照完整性约束:确保外键的引用关系是有效的,即外键值必须等于被引用表中的主键值或者为空。
- 用户定义完整性约束:用户可以自定义额外的完整性约束,如检查约束、唯一约束、默认约束等。
4. 数据库的关系模型有哪些特点?数据库的关系模型具有以下特点: - 数据用二维表的形式进行组织,表由行和列组成,每一行表示一个实体,每一列表示一个属性。
- 表与表之间通过主键和外键建立关联关系,形成关系。
- 关系模型提供了一种数据独立性的设计方法,使得应用程序与数据的逻辑结构相分离,提高了系统的灵活性和可维护性。
(完整版)第五章_数据库完整性(习题)
(完整版)第五章_数据库完整性(习题)一、选择题1.完整性检查和控制的防范对象是( ),防止它们进入数据库。
安全性控制的防范对象是(),防止他们对数据库数据的存取。
A.不合语义的数据 B。
非法用户 C.不正确的数据 D.非法操作2.找出下面SQL命令中的数据控制命令().A。
GRANT MIT C.UPDATE D.SELECT3.下述SQL命令中,允许用户定义新关系时,引用其他关系的主码作为外码的是()。
A。
INSERT B。
DELETE C.REFERENCES D. SELECT4.下述SQL命令的短语中,不用于定义属性上约束条件的是()。
A.NOT NULL短语 B。
UNIQUE短语 C.CHECK短语 D。
HAVING短语二、填空题1.数据库的完整性是指数据的正确性和相容性.2.关系模型的实体完整性在CREATE TABLE中用 primary key 关键字来实现。
3.检查主码值出现不唯一和有一个为空违约情况时,则DBMS拒绝插入或修改。
4.关系模型的参照完整性在CREATE TABLE中用 foreign key关键字来实现。
5.当参照完整性检查出现违约情况时,则DBMS可以采用拒绝、级联和设置为空策略处理。
6.参照完整性的级连操作的关键字是cascade .7.在CREATE TABLE中定义属性上的约束条件,包括not null 、unique 和 check。
8.在CREATE TABLE中定义属性上的约束条件,检查列值唯一用unique 关键字。
9.关系模型的元组上的约束条件的定义,在CREATE TABLE中用check关键字来实现。
10.在Sno(学号)列上创建约束,要求Sno的值在18至22岁之间,约束名Sno_CK。
请写出对应的完整性命名子句constraintSno_CK primary key check(sno between 18 and 22)。
1.A C ;BD 2. A 3。
(完整版)5数据完整性课后习题
习题一、选择题1.一个表上可以建立多个名称不同、类型各异的触发器,每个触发器可以由三个动作来引发,但是每个触发器最多只能作用于()个表上。
A.一B.二C.三D.四2.激活触发器的数据修改语句,有效选项是()。
A.INSERTB.UPDATEC.DELETED.SELECT3.创建触发器不需要指定的选项有()。
A.触发器的名称B.在其上定义触发器的表C.触发器将何时触发D.执行触发操作的编程语句4.当希望执行对Book表的操作时,如果该操作不执行,而是执行对PRICE 表的更新操作,则应该创建什么类型的DML 触发器()。
A.FORB.BEFOREC.AFTERD.INSTEAD OF5.在DML触发器工作中,有可能生成的两个内存表是()。
A.INSERTED, DELETEDB.UPDATED, INSERTEDC.DELETED,ADDEDD.ADDED, DELETED6.关于触发器叙述正确的是()。
A.触发器是自动执行的,可以在一定条件下触发B.触发器不可以同步数据库的相关表进行级联更改C.SQL Server 2008不支持DDL触发器D.触发器不属于存储过程7.关于约束叙述正确的是()。
A.每个约束只能作用与一个列上B.每个约束可以作用多个列,但是必须在一个表里C.每个约束可以作用到多个表的多个列D.以上都不对8.用户定义的约束,是属于()完整性。
A.用户自定义B.实体C.参照D.都不是9.下述SQL命令的短语中,定义属性上约束条件的是()。
A.NOT NULL短语B.UNIQUE短语C.CHECK短语D.HA VING短语10.下列()是对触发器的描述A.定义了一个有相关列和行的集合B.当用户修改数据时,一种特殊形式的存储过程被自动执行C.SQL语句的预编译集合D.它根据一或多列的值,提供对数据库表的行的快速访问二、填空题1.数据库的实体完整性要求表中所有行唯一,可通过建主码、唯一约束、唯一索引、IDENTITY标识等约束来实现。
王珊《数据库系统概论》章节专项练习(数据库完整性)【圣才出品】
第5章数据库完整性一、选择题1.数据的完整性是指数据的正确性、有效性和()。
A.可维护性B.相容性C.可恢复性D.独立性【答案】B【解析】数据模型应该反映数据模型必须遵守的基本的通用的完整性约束条件。
完整性规则是给定的数据模型中数据及其联系具有的制约和依存规则,用以限定符合数据模型的数据库状态及状态的变化,以保证数据的正确、有效和相容。
2.有一个关系:职工(职工号,姓名,籍贯),规定职工号的值域是8个数字字符组成的字符串,这一规则属于()。
A.参照完整性B.用户定义的完整性C.实体完整性D.关键字完整性约束【答案】B【解析】用户定义的完整性是针对某一具体数据库的约束条件,它反映某一具体应用涉及的数据必须满足语义要求;而规定学号的值域是8个数字字符组成的字符串显然属于这一类型。
3.SQL Server的约束包括()。
A.DEFAULT、RULE、CHECK和UNIQUEB.CHECK、RULE、PRIMARY KEY和FOREIGN KEYC.UNIQUE、DEFAULT、RULE、PRIMARY KEY和FOREIGN KEYD.PRIMARY KEY和FOREIGN KEY【答案】C【解析】SQL Server的约束包括UNIQUE、DEFAULT、RULE、PRIMARY KEY和FOREIGN KEY等。
4.数据完整性保护中的约束条件主要是指()。
A.用户操作权限的约束B.用户口令校对C.值的约束和结构的约束D.并发控制的约束【答案】C【解析】完整性规则主要分为两大类,一类是域完整性规则,实际上就是值的约束;另一类是关系完整性规则,实际上就是结构的约束。
5.“年龄在15至30岁之间”这种约束属于DBMS的()功能。
A.恢复B.并发控制C.完整性D.安全性【答案】C【解析】“年龄在15至30岁之间”是完整性约束中值的约束。
6.在SQL Server中,可以通过数据库对象及各种约束来保证数据的完整性,以下都属于数据库对象的有()。
数据库系统概论第五章完整性
一、选择题1.实体完整性要求主属性不能取空值,这一点可通过( )来保证。
A .定义外部键B .定义主键C .用户定义的完整性D .由关系系统自动答案:B2. ( )定义了对参照关系的外部属性值域的约束。
A .实体完整性规则B .用户定义的完整性规则C .参照完整性规则D .以上均不是答案:C3.在如下2个数据库的表中,若雇员信息表EMP 的主键是雇员号,部门信息表DEPT 的主键是部门号。
若执行所列出的操作,哪个操作不能执行( )EMP DEPTA .从雇员信息表EMP 中删除行(’010’,’’王利,’01’,’1200’)B .在雇员信息表EMP 中插入行(’102’,’赵丽’,’01’,’1500’)C .将雇员信息表EMP 中雇员号=’010’的工资改为1600元D .将雇员信息表EMP 中雇员号=’101’的部门号改为’05’答案:D4.关系数据库中,实现主码标识元组的作用是通过( )A .实体完整性规则B .参照完整性规则C .用户自定义的完整性D .属性的值域答案:A5.在关系数据库中,实现“表中任意两行不能相同”的约束是靠( )A .外码B .主码C .属性D .列答案:B6.关系数据库中,实现表与表之间的联系是通过( )A .实体完整性规则B .参照完整性规则C .用户自定义的完整性D .值域答案:B雇员号 雇员名 部门号 工资001 张红 02 2000 010 王利 01 1200056 马明 02 1000101 赵丽 04 1500 部门号 部门名 主任 01 业务部 李林02 销售部 江平 03 服务部 周明 04 财务部 陈胜7.根据关系模式的完整性规则,一个关系中的“主键”()A.不能有两个B.不能成为另一个关系的外部键C.不允许为空D.可以取空值答案:C8.在关系模型中,实现“关系中不允许发现相同的元组”的约束是通过()A.候选键B.主键C.外键D.一般键答案:B二、填空题1.为了维护数据库中数据的完整性,在对关系数据库执行插入时首先应检查__________规则。
数据库应用基础第五章数据完整性
5.2 约束的类型
1 PRIMARY KEY 约束 2 FOREIGN KEY 约束 3 UNIQUE 约束 4 CHECK 约束 5 DEFAULT 约束
13
约束是一种强制数据完整性的 book_id borrower_id lend_date back_date
标准机078制9 。 960651
[[CONSTRAINT constraint_name] {PRIMARY KEY
所在列的数据类型
[CLUSTERED|NONCLUSTERED]
创建约[C束LU的S列|TUE的RN名EIQD称|UNEONCLUSTERED] |[FOREIGN KEY] REFERENCES新建约束的名称
ref_table [(ref_column)]
(3)引用完整性 引用完整性用于在输入或删除记录
时,例:保对持于表之Lib间ra已ry定_D义B数的据关库系中。的
book_info 表和 class 表,引用完整性 基于 book_info 表中的外键 (class_id) 与 class 表中的主键 (class_id) 之间 的关系 。
8
1 数据完整性的类型
{(column_name[,...])}
24
② FOREIGN KEY 约束
ALTER TABLE table_name
被FOREIGN
ADD CONSTRAINT constrainKtE_Yn约a束m参e 照的表的名
FOREIGN KEY {(column_nam称e[,...])} REFERENCES ref_table {(column_name[,...])} [ON DELETE {CASCADE|NO ACTION}] [ON UPDATE {CASCADE|NO ACTION}]
数据库完整性习题解答
第十章数据库完整性习题解答和解析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)违约反应,如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。
数据库原理第五章数据库安全期末习题与答案
数据库原理第五章数据库安全期末习题与答案1、事务的一致性是指()A.事务一旦提交,对数据库的改变是永久的。
B.一个事务内部的操作及使用的数据对并发的其他事务是隔离的。
C.事务中包括的所有操作要么都做,要么都不做。
D.事务必须是使数据库从一个一致性状态变到另一个一致性状态。
正确答案:D2、完整性控制的防范对象是()A.非法操作B.合法用户C.不合语义的数据D.以上答案均不对正确答案:C3、数据库技术中,“日志”和操作的关系是()A.操作的同时记录日志B.日志先于操作进行记录C.操作完成后在记录日志D.日志在操作完成之后任何时刻均可记录正确答案:B4、副本的作用时()A.数据库恢复B.完整性控制C.并发性控制D.保障安全性5、解决并发性带来的数据不一致问题普遍采用的技术是()A.封锁B.存取控制C.恢复D.协商正确答案:A二、判断题1、一级封锁协议使用共享锁解决丢失更新问题。
(错)2、一个登录账号可以对应多个数据库用户。
(对)3、删除规则的时候,需要将规则从绑定的对象上解除绑定,才能够删除。
(对)4、在出现事务故障的时候,反向扫描日志,对出现事务故障的更新操作执行反操作。
(对)5、使用一次加锁法可以解决死锁问题。
(对)三、填空题1、并发操作导致的数据库不一致问题主要包括()、读污、不可重读。
正确答案:丢失更新2、规则和默认是用来帮助用户实现数据库的()正确答案:完整性或完整性控制3、数据库恢复的基本原理是()正确答案:数据冗余4、SQL使用两种账号确保数据库的安全性,分别是()和数据库用户。
正确答案:登录账号5、封锁主要有两类锁构成,分别是()和共享锁。
正确答案:互斥锁。
数据库系统概论作业
《数据库系统概论》作业第一章概述1. 层次模型的数据结构是__树形__结构;网状模型的数据结构是网状结构;关系模型的数据结构是__二维表__结构。
2.数据库系统具有“数据独立性”特点的原因是因为在数据库系统中(B)(A)、采用磁盘作为外存(B)、采用三级模式结构(C)、使用OS来访问数据(D)、用宿主语言编写应用程序3. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是(A)。
(A)、DBS包括DB和DBMS(B)、DBMS包括DB和DBS(C)、DB包括DBS和DBMS(D)、DBS就是DB,也就是DBMS4.数据库系统的数据独立性体现在( B )(A)、不会因为数据的变化而影响到应用程序(B)、不会因为系统数据存储结构和数据逻辑结构的变化而影响应用程序(C)、不会因为存储策略的变化而影响存储结构(D)、不会因为某些存储结构的变化而影响其他的存储结构5.要保证数据库的数据独立性,需要修改的是(A)(A)、模式与外模式(B)、模式与内模式(C)、三层之间的两种映射(D)、三层模式6.下述( D )不是DBA(数据库管理员)的职责。
(A)、完整性约束说明(B)、定义数据库模式(C)、数据库安全(D)、数据库管理系统设计7.(B)是按照一定的数据模型组织的,长期储存在计算机内,可为多个用户共享的数据的集合。
(A)、数据库系统(B)、数据库(C)、关系数据库(D)、数据库管理系统8.数据模型的三要素是( D)。
(A)、外模式、模式、内模式(B)、关系模型、层次模型、网状模型(C)、实体、联系、属性(D)、数据结构、数据操作、完整性约束9. 简述数据库系统的主要特点。
(1)、数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
(2)数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,(3)数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。
数据库技术与应用第5章 习题标准答案
第5章数据库完整性与安全性1. 什么是数据库的完整性?什么是数据库的安全性?两者之间有什么区别和联系?解:数据库的完整性是指数据库中数据的正确性、有效性和相容性,其目的是防止不符合语义、不正确的数据进入数据库,从而来保证数据库系统能够真实的反映客观现实世界。
数据库安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。
数据的完整性和安全性是两个不同的概念,但是有一定的联系:前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和错误结果。
后者是保护数据库防止恶意的破坏和非法的存取。
也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。
2. 什么是数据库的完整性约束条件?完整性约束条件可以分为哪几类?解:完整性约束条件是指数据库中的数据应该满足的语义约束条件。
一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。
静态列级约束是对一个列的取值域的说明,包括以下几个方面:①数据类型的约束,包括数据的类型、长度、单位、精度等;②对数据格式的约束;③对取值范围或取值集合的约束;④对空值的约束;⑤其他约束。
静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。
静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。
常见的静态关系约束有:①实体完整性约束;②参照完整性约束;③函数依赖约束。
动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:①修改列定义时的约束;②修改列值时的约束。
动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。
动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。
3. 试述DBMS如何实现完整性控制。
解:为了维护数据库的完整性,DBMS提供了以下三种机制:①完整性约束条件定义完整性约束条件也称为完整性规则,是数据库中的数据必须满足的语义约束条件。
数据库四五六章作业答案
第四章作业1. 什么是数据库安全性?数据库安全性是指保护数据库以防止不合法使用所造成的数据泄漏、更改或破坏。
2. 试述实现数据库安全性控制的常用方法和技术。
数据库管理系统提供的安全措施主要包括用户身份鉴别、自助存取控制和强制存取控制技术、试图技术和审计技术、数据加密存储和加密传输等。
3. 什么是数据库中的自主存取控制和强制存取控制方法。
a.在自助存取方法中,用户对于不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。
因此自主存取控制非常灵活。
b.在强制存取控制方法中,每一个数据库对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。
对于任意一个对象,只有具有合法许可证的用户才可以存取。
强制存取控制因此相对比较严格。
4. 今有两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号)部门(部门号,名称,经理名,地址,电话号)请用SQL的grant和revoke语句(加上视图机制)完成以下授权定义或者存取控制功能:(1)授予用户王明对上述两个表的SELECT权限GRANT SELECTON TABLE 职工,部门TO 王明;(2)授予用户李勇对上述两个表的INSERT和DELETE权限GRANT INSERT, DELETEON TABLE 职工,部门TO 李勇;(3)授予用户刘星对职工表的SELECT权限和对工资字段的UPDATE权限GRANT SELETE,UPDATE(工资)ON TABLE 职工TO 刘星;(4)授予用户张欣创建表的权限GRANT CREAT TABLETO 张欣;(5)授予用户对上述两个表的所有权限,并具有转授给他人的权力。
GRANT ALL PRIVILEGESON 职工,部门TO 用户WITH GRANT OPTION;(6)用户杨兰只能查看每个部门职工的最高工资、最低工资、平均工资,但不能查看每个职工的工资。
数据库四五六章作业答案
F
设 K 为 R<U,F>中的属性火属性组合,若 K→U,则称 K 为 R 的候选码。 最简单的情况,单个属性是码;最极端的情况,整个属性组是码,称为全 码。 关系模式 R 中属性或属性组 X 并非 R 的码,但 X 是另一个关系模式的码, 则称 X 是 R 的外部码,也称外码。 关系数据库中的关系是要满足一定要求的,满足不同程度要求的为不同范 式。满足最低要求的叫第一范式,简称 1NF。 若 R 属于 1NF,且每一个非主属性完全函数依赖于任何一个候选码,则 R 属于 2NF。 若 R 属于 2NF 并且不存在非主属性对码的传递函数依赖,则称 R 属于 3NF。 若 R 属于 3NF,并且不存在主属性和码之间的部分和传递函数依赖,则称 R 属于 BCNF。 设 R(U)是属性及 U 上的一个关系模式。X,Y,Z,是 U 的子集,并且 Z= UX-Y。关系模式 R(U)中多值依赖 X→→Y 成立,当且仅当对 R(U)的任一关系 r,给 定的一对(x,z)值,有一组 Y 的值,者组织仅仅决定于 x 的值而与 z 值无关。
第五章王珊,萨师煊版《数据库系统概论》讲义及课后习题答案
完整性约束条件分类
六类完整性约束条件
•
静态列级约束 静态元组约束 静态关系约束 动态列级约束 动态元组约束 动态关系约束
• • • • •
完整性约束条件(续)
对象状态 动态 动态列级约束 ④ 静态列级约束 ① 动态元组约束 ⑤ 动态关系约束 ⑥
静态
静态元组约束 静态关系约束 ② ③
列
元组
关系
对象粒度
4. 修改被参照关系中主码的问题
• 两种策略 (1)不允许修改主码 (2)允许修改主码
允许修改主码策略
• 违约操作 ♦要修改被参照关系中某些元组的主码值, 而参照关系中有些元组的外码值正好等 于被参照关系要修改的主码值 ♦要修改参照关系中某些元组的主码值, 而被参照关系中没有任何元组的外码值 等于被参照关系修改后的主码值
允许修改主码策略
例:将Student关系中Sno=950001的元组中Sno 值改为960123。而SC关系中有 4个元组的 Sno=950001 – 级联修改:将SC关系中4个Sno=950001元组 中的Sno值也改为960123。如果参照关系同时 又是另一个关系的被参照关系,则这种修改操 作会继续级联下去。
一般是拒绝执行
• 违反参照完整性的操作:
– 拒绝执行 – 接受这个操作,同时执行一些附加的操作,以保证 数据库的状态正确
三、参照完整性的实现
例:职工-部门数据库包含职工表EMP和部门表DEPT
1 DEPT关系的主码为部门号Deptno 2 EMP关系的主码为职工号Empno, 外码为部门号Deptno 称DEPT为被参照关系或目标关系,EMP为参照关系
3.在参照关系中插入元组时的问题
• 受限插入 – 仅当被参照关系中存在相应的元组,其主码值 与参照关系插入元组的外码值相同时,系统才 执行插入操作,否则拒绝此操作。 • 递归插入 – 首先向被参照关系中插入相应的元组,其主码 值等于参照关系插入元组的外码值,然后向参 照关系插入元组。
数据库完整性练习题
数据库完整性一、选择题1.完整性检查和控制的防范对象(),防止它们进入数据库。
安全性控制的防范对象是(),防止他们对数据库数据的存取。
A. 不合语义的数据B. 非法用户C. 不正确的数据D. 非法操作2.下述哪个是SQL语言中的数据控制命令()。
A. GRANTB. COMMITC. UPDATED. SELECT3.下述SQL语言中的权限,哪一个允许用户定义新关系时,引用其他关系的主码作为外码()。
A. INSERTB. DELETEC. REFERENCESD. SELECT选择题答案:(1)A C B D(2)A(3)C二、简答题1.什么是数据库的完整性?答:数据库的完整性是指数据的正确性和相容性。
2.数据库的完整性概念与数据库的安全性概念有什么区别和联系?答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。
前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(G a r b a g e I n G a r b a g e O u t)所造成的无效操作和错误结果。
后者是保护数据库防止恶意的破坏和非法的存取。
也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。
3.什么是数据库的完整性约束条件?可分为哪几类?答:完整性约束条件是指数据库中的数据应该满足的语义约束条件。
一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。
静态列级约束是对一个列的取值域的说明,包括以下几方面:1.对数据类型的约束,包括数据的类型、长度、单位、精度等2.对数据格式的约束3.对取值范围或取值集合的约束。
4.对空值的约束5.其他约束静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。
静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。
数据库管理系统原理 第五章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学
数据库管理系统原理第五章测验一、单选题(共40.00分)1. 哪种完整性将两个表中的相应元组联系起来,对其中一个表进行增删改操作时有可能破坏相应的完整性,必须进行检查。
()A. 过程完整性B. 实体完整性C. 参照完整性D. 用户定义完整性正确答案:D2. 完整性约束命名子句CONSTRAINT <完整性约束条件名><完整性约束条件> <完整性约束条件>包括NOT NULL、UNIQUE等,请从下列选项中选出不用于构造完整性约束条件的短语()。
A. CHECK短语B. PRIMARY KEY短语C. FOREIGN KEY短语D. ALTER短语正确答案:D3. 一个数据表上可能定义了多个触发器,执行下列语句,正确的执行顺序是()1、执行该表上的BEFORE触发器; 2、激活触发器的SQL语句; 3、执行该表上的AFTER触发器。
A. 1、2、3B. 2、1、3C. 2、3、1D. 3、1、2正确答案:A4. 下列关于定义触发器的语法说明错误的选项是()。
A. 表的拥有者才可以在表上创建触发器B. 触发器可以定义在基本表上,也可以定义在视图上C. 同一模式下,触发器名必须是唯一的,触发器名和表名必须在同一模式下D. 触发器只能定义在基本表上,不能定义在视图上正确答案:B二、多选题(共33.00分)1. 触发器类型()。
A. 行级触发器(FOR EACH ROW)B. 列级触发器(FOR EACH COLUMN)C. 语句级触发器(FOR EACH STATEMENT)D. 表级触发器(FOR EACH TABLE)正确答案:A C2. CREATE TABLE DEPT ( Deptno NUMERIC(2), Dname CHAR(9) UNIQUE NOT NULL)关于关键子句“ UNIQUE NOT NULL”描述正确的选项()。
A. 实体完整性B. 要求Dname列值唯一, 或者不能取空值C. 用户定义的完整性D. 要求Dname列值唯一, 并且不能取空值正确答案:C D3. 数据的安全性描述正确的选项()。
数据库第四、五章习题及答案
第4、5章练习题(数据库的安全性、完整性)一、选择题1.下面哪个不是数据库系统必须提供的数据控制功能。
A.安全性B.可移植性C.完整性D.并发控制答案:B2.保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。
这是指数据的。
A.安全性B.完整性C.并发控制D.恢复答案:A3.数据库的是指数据的正确性和相容性。
A.安全性B.完整性C.并发控制D.恢复答案:B4.在数据系统中,对存取权限的定义称为。
A.命令 B.授权 C.定义 D.审计答案:B5.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的。
A.可靠性B.一致性C.完整性D.安全性答案:D6.下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)的修改权”这一功能的是A.REVOKE UPDATE(XH) ON TABLE FROM ZHAO B.REVOKE UPDATE(XH) ON TABLE FROM PUBLICC.REVOKE UPDATE(XH) ON TABLE STUD FROM ZHAO D.REVOKE UPDATE(XH) ON STUD FROM PUBLIC答案:C 7.把对关系SC的属性GRADE的修改权授予用户ZHAO的SQL语句是A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAOC)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO 答案:C8.以下( D )不属于实现数据库系统安全性的主要技术和方法。
A. 存取控制技术B. 视图技术C. 审计技术D. 出入机房登记和加锁9.SQL中的视图提高了数据库系统的( D )。
A. 完整性B. 并发控制C. 隔离性D. 安全性10.安全性控制的防范对象是( B ),防止他们对数据库数据的存取。
数据库复习题5,6,7,8章(附答案)
第 7 章数据库设计 一、选择题
1、在数据库设计中,用 E-R 图来描述信息结构但不涉及信息在计算机中的表示,它是数
据库设计的 B
阶段。
A.需求分析
B.概念设计 C.逻辑设计 D.物理设计
2、在关系数据库设计中,设计关系模式是 C
的任务。
A.需求分析阶段 B.概念设计阶段
C.逻辑设计阶段
D.物理设计
(2) 1NF 关系存在部分依赖 消除部分依赖转化为 2NF S1(sno,sname,sd,sdname) S2(sno,course,grade)
(3) Sdname 传递依赖于 sno->sd->sdname 消除传递依赖转化为 S1(sno,sname,sd) S2(sno,course,grade) S3(sd,sdname)
阶段
3、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是
B
。
A.建立库结构 B.扩充功能 C.加载数据 D.系统调试
4、在数据库的概念设计中,最常用的数据模型是
D
。
A.形象模型
B.物理模型 C.逻辑模型 D.实体联系模型
5、从 E-R 模型关系向关系模型转换时,一个 M∶N 联系转换为关系模型时,该关系模式
7、候选关键字中的属性称为
B 。 A.非主属性 B.主属性 C.复合属性
D.关键属性
8、消除了部分函数依赖的 1NF 的关系模式,必定是 B
。A.1NF B.2NF
C.3NF D.4NF
9、关系模式的候选关键字可以有 C ,主关键字有 B 。
A.0 个 B.1 个 C.1 个或多个 D.多个
10、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门”
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章数据库的完整性
1 . 数据库的完整性是指数据的________ 和________。
2 . SQL标准使用了一系列概念来描述完整性,包括关系模型的________ 、________和________完整性。
3 数据库的完整性概念与数据库的安全性概念有什么区别和联系?
4 DBMS的完整性控制机制应具有哪些功能?
5. 关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的?
6.完整性检查和控制的防范对象是(),防止它们进入数据库。
安全性控制的防范对象是(),防止他们对数据库数据的存取。
7.找出下面SQL命令中的数据控制命令()。
Grant revoke
8.下述SQL命令中,允许用户定义新关系时,引用其他关系的主码作为外码的是()。
Referrences
6 .假设有下面两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;部门(部门号,名称,经理名,电话),其中部门号为主码;用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。