正确答案: A
有效性、正确性和一致性
题目:在数据库系统中,数据的完整性是指数据的()
解析:数据库完整性是指数据库中数据的正确性、有效性和相容性(一致性)。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以通过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。通过DBMS实现的数据库完整性按照数据库设计步骤进行设计,而由应用软件实现的数据库完整性则纳入应用软件设计。
查看原题 查看所有试题
学习资料的答案和解析:
[单选题]设关系模式R,其中U={A,B,C,D,E),F={A→BC,C→D,BC→E,E→A},则分解p={R1(ABCE),R2(CD)}满足()
具有无损联接性、保持函数依赖
解析:首先看分解是否保持函数依赖。在F中有4个函数依赖。A→BC、BC→E和E→A在R1中得到了保持,C→D在R2中得到了保持,因此分解是保持函数依赖的。接下来,再根据以下定理判断是否为无损联接。设p={R1,R2}是R的一个分解,F是R上的函数依赖集,那么分解p相对于F是无损联接分解的充要条件是(R1∩R2)→(R1-R2)或(R1∩R2)→(R2-R1)。要注意的是,这两个条件只要任意一个条件成立就可以了,同时该定理只适用于"一分为二"的情况,即一个关系模式分解为两个关系模式。在本题中,R1∩R2={C},R1-R2=ABE,R2-R1=D,因为在F中有C→D成立,所以,分解是无损联接。
[单选题]设有职务工资关系P(职务,最低工资,最高工资),员工关系EMP(员工号,职务,工资),要求任何一名员工,其工资值必须在其职务对应的工资范围之内,实现该需求的方法是()
建立EMP上的触发器程序审定该需求
解析:本题考查对数据完整性约束方面基础知识的掌握。完整性约束包括:实体完整性约束、参照完整性约束和用户自定义完整性约束3类。实体完整性要求主键中的任一属性不能为空,同时主键不能有重复值。参照完整性要求外键的值,要么为空,要么为对应关系主键值域。同时仅当参照关系中没有任何元组的外键值与被参照关系中要删除元组的主键值相同时,系统才可以执行删除操作,否则拒绝执行删除操作。用户定义的完整性是针对某一具体数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。一般用于限制某字段值的取值范围,此范围不涉及其他数据表的值。从以上描述来看,题目的要求,以上3种完整性约束都无法达到目的。所以需要考虑触发器,触发器的功能一般比完整性约束要强得多。触发器的原理是通过编写相应的触发器脚本代码,来对某个字段值的变化进行监控,一旦值发生变化,则触发器脚本执行。在本题中,需要达到的效果是EMP中的工资产生变化,则需要判断变化值是否在P关系规定的范围之内,所以应在EMP上建立触发器。本题选C。
[单选题]在数据库系统中,“事务”是访问数据库并可能更新各种数据项的一个程序执行单元。为了保证数据完整性,要求数据库系统维护事务的原子性、一致性、隔离性和持久性。针对事务的这4种特性,考虑以下的架构设计场景。假设在某一个时刻只有一个活动的事务,为了保证事务的原子性,对于要执行写操作的数据项,数据库系统在磁盘上维护数据库的一个副本,所有的写操作都在数据库副本上执行,而保持原始数据库不变,如果在任一时刻操作不得不中止,系统仅需要删除副本,原数据库没有受到任何影响。这种设计策略称为(1)。事务的一致性要求在没有其他事务并发执行的情况下,事务的执行应该保证数据库的一致性。数据库系统通常采用(2)机制保证单个事务的一致性。事务的隔离性保证操作并发执行后的系统状态与这些操作以某种次序顺序执行(即可串行化执行)后的状态是等价的。两阶段锁协议是实现隔离性的常见方案,该协议(3)。持久性保证一旦事务完成,该事务对数据库所做的所有更新都是永久的,如果事务完成后系统出现故障,则需要通过恢复机制保证事务的持久性。假设在日志中记录所有对数据库的修改操作,将一个事务的所有写操作延迟到事务提交后才执行,则在日志中(4)。当系统发生故障时,如果某个事务已经开始,但没有提交,则该事务应该(5)。
解析:本题主要考查数据库系统架构设计知识。在数据库系统中,“事务”是访问并可能更新各种数据项的一个程序执行单元。为了保证数据完整性,要求数据库系统维护事务的原子性、一致性、隔离性和持久性。题干中第1个架构设计场景描述了数据库设计中为了实现原子性和持久性的最为简单的策略:“影子拷贝”。该策略假设在某一个时刻只有一个活动的事务,首先对数据库做副本(称为影子副本),并在磁盘上维护一个dp_pointer指针,指向数据库的当前副本。对于要执行写操作的数据项,数据库系统在磁盘上维护数据库的一个副本,所有的写操作都在数据库副本上执行,而保持原始数据库不变,如果在任一时刻操作不得不中止,系统仅需要删除新副本,原数据库副本没有受到任何影响。题干中的第2个架构设计场景主要考查考生对事务一致性实现机制的理解。事务的一致性要求在没有其他事务并发执行的情况下,事务的执行应该保证数据库的一致性。数据库系统通常采用完整性约束检查机制保证单个事务的一致性。题干中的第3个架构设计场景主要考查数据库的锁协议。两阶段锁协议是实现事务隔离性的常见方案,该协议通过定义锁的增长和收缩两个阶段约束事务的加锁和解锁过程,能够保证事务的串行化执行,但由于事务不能一次得到所有需要的锁,因此该协议可能会导致死锁。题干中的第4个架构设计场景主要考查数据库的恢复机制,主要描述了基于日志的延迟修改技术(Deferred-ModificationTechruque)的设计与恢复过程。该技术通过在日志中记录所有对数据库的修改操作,将一个事务的所有写操作延迟到事务提交后才执行,日志中需要记录“事务开始”和“事务提交”时间,还需要记录数据项被事务修改后的新值,无须记录数据项被事务修改前的原始值。当系统发生故障时,如果某个事务已经开始,但没有提交,则该事务对数据项的修改尚未体现在数据库中,因此无须做任何恢复动作。
[单选题]企业战略数据模型可分为两种类型:(1)描述日常事务处理中的数据及其关系;(2)描述企业管理决策者所需信息及其关系。
解析:企业中使用的数据模型分两大类,一类针对处理日常事务的应用系统,即数据库;另一类针对高层决策分析,即数据仓库。