数据库复习题。问答题
- 格式:doc
- 大小:62.50 KB
- 文档页数:6
一、选择题:1、DB DBMS^ DBS三者的关系是(B)A、DB包括DBMS^ DBS B 、DBS包括DB和DBMSC、DBMS包括DBS和DB D 、DBS与DB DBMSc关2、假定学生关系式S( S#, SNAME SEX AGE,课程关系式C(C#, CNAME TEACHE)学生选课关系是SC( S#, C#, GRAN)要查找选修“ COMPUTER课程的“女”学生姓名,将涉及到关系(D)A、S B 、SC C C 、S, SC D 、S, C, SC3、将E-R图转换为关系模式时,如果两实体间的联系是m n,下列说法正确的是(C)A、将m方主键(主码)和联系的属性纳入n方的属性中B、将m方属性和n方属性中均增加一个表示级别的属性C、增加一个关系表示联系,其中纳入m方和n方的主键(主码)D、将n方主键(主码)和联系的属性纳入m方的属性中4、由SELECT-FRO—WHER—GROU—ORDERS成的SQL语句,在被DBMS处理时,各字句的执行次序为(0A、SELEC—FRO—WHER—GROU—ORDERB、FROM—SELECT-WHER—GROU—ORDERC、FROM—WHER—GROU—SELECT- ORDERD、SELECT- FRO—GROU—WHER—ORDER5、以下不是数据库技术所具备的特点是(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组成。
一、选择题1、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
在这几个阶段中,数据独立性最高的是()阶段。
A.数据库系统B.文件系统C.人工管理D.数据项管理2、数据库的概念模型独立于()。
A.具体的机器和DBMS B.E-R图C.信息世界D.现实世界3、()是存储在计算机内有结构的数据的集合。
A.数据库系统B.数据库C.数据库管理系统D.数据结构4、关系数据库管理系统应能实现的专门关系运算包括()。
A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表5、关系模型中,一个关键字是()。
A.至多由一个属性组成B.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成C.可由多个任意属性组成D.以上都不是6、自然连接是构成新关系的有效方法。
一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的()。
A.元组B.行C.记录D.属性7、SQL语言是()的语言,易学习。
A.过程化B.非过程化C.格式化D.导航式8、设有一个关系:DEPT(DNO,DNAME ),如果要找出倒数第3个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE()A.'W%' B.'_%W_ _' C.'W' D.'W%'9、在关系数据库设计理论中,如果一个关系R满足1NF,但R的某个非码属性传递函数依赖于码,则关系R至多属于( )A.1NF B.2NF C.3NFD、BCNF10、设关系R与关系S具有相同的目(或称度),且相对应的属性的值取自向一个域,则S-(S-R)等于()A.R∪S B.R∩S C.R×S D.R-S 11、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。
这是指数据的()。
A.安全性B.完整性C.并发控制D.恢复12、数据库的()是指数据的正确性和相容性。
1.保证数据库逻辑数据独立性的是()。
A.模式B.模式与内模式的映射 C.模式与外模式的映射D.内模式 2.设关系R和S各有100个元组,那么这两个关系的笛卡尔积运算结果的元组个数为()A.100B.200C.10000D.不确定(与计算结果有关)3.一般不适合创建索引的属性有()。
A.主键码和外键码。
B.可以从索引直接得到查询结果的属性。
C.对于范围查询中使用的属性。
D.经常更新的属性。
4.为保护数据库中的信息,防止未经授权或非法的使用所造成的数据泄漏,更改或破坏,称为数据库的()。
A.安全性B.完整性C.恢复D.并发控制5.有如下关系:教师(编号,姓名,性别,职称),将属性“性别”的取值范围定义为(男,女)符合()定义。
A.实体完整性B.参照完整性C.用户定义的完整性D.逻辑完整性6.如何构造出一个合适的数据逻辑结构是()主要解决的问题。
A.关系数据库优化B.数据字典 C.关系数据库规范化理论D.关系数据库查询7.设计数据流程图(DFD)属于数据库设计的()阶段任务。
A.逻辑设计B.概念设计C.物理设计D.需求分析8.SQL和宿主语言的接口是()。
A.DBMS B.OS C.DML D.主变量9.关系代数表达式的优化策略中,首先要做的是()A.对文件进行预处理B.尽早执行选择运算C.执行笛卡儿积运算D.投影运算10.DBMS的并发控制子系统,保证了事务()的实现A.原子性B.一致性C.隔离性D.持久性11.对数据库并发操作有可能带来的问题包括()A.读出“脏数据”B.带来数据的冗余C.未被授权的用户非法存取数据D.破坏数据独立性12.关系数据模型的三个组成部分中,不包括()A.完整性规则B.数据结构C.数据操作D.并发控制13.当关系R和S自然联接时,能够把R和S原来该舍弃的元组放到结果关系中的操作是()A.左外联接B.右外联接C.外部并D.外联接14.设有关系R(A,B,C)的值如下:AB C2 2 32 3 43 3 5下列叙述正确的是()A.函数依赖A→B在上述关系中成立B.函数依赖BC→A在上述关系中成立C.函数依赖B→A在上述关系中成立D.函数依赖A→BC在上述关系中成立15.在视图上不能完成的操作是()。
数据库原理复习练习题含答案泰山学院信息科学技术学院计算机科学与技术专业数据库系统概论本科试卷(试卷共6页,答题时间120分钟)题号一二三四五总分统分人复核人得分得分阅卷人一、选择题(每小题2分,共20 分。
请将答案填在下面的表格内)题号 1 2 3 4 5 6 78910答案1、数据库管理系统是管理控制数据库的主要软件,简称()。
A、DBB、DBMSC、DBSD、DBT2、反映现实世界中实体及实体间联系的信息模型是()。
A.关系模型B.层次模型C.网状模型D.E-R模型3、关系数据模型的三个组成部分中,不包括()。
A. 数据结构B. 数据操作C.数据控制D. 完整性规则4、下列语句中,()不属于SQL中DML的语句A.SELECTB.CREATEC.INSERTD.DELETE5、一个关系模式属于3NF,是指( )。
A.每个非主属性都不传递依赖于主键B.主键唯一标识关系中的元组C.关系中的元组不能重复D.每个属性都是不可分解的6、设有关系R(A,B,C)R上的函数依赖集F={A→B,A→C}。
则关系R属于( )A.1NFB.2NFC.3NFD.BCNF7、DBMS在运行过程中建立的日志文件,主要用于对数据库的()A.安全性控制 B. 并发调度控制C.数据库恢复 D. 完整性控制8、设关系模式R是3NF模式,那么下列说明不正确的是()。
A.R必是2NF模式 B.R必定不是BCNFC.R可能不是BCNF D.R必定是1NF模式9、.若事务T1已经给数据Q加上了S锁,则事务T2对Q可以()A. 加S锁B. 加X锁C. 加S锁,或X锁D.不能再给Q加任何锁10、SQL提供的触发器机制是对数据库系统采取的一种()措施。
A、完整性控制B、安全性控制C、数据库恢复D、事务并发控制得分阅卷人二、填空题(每题2分,共20分)1、数据模型的三个组成部分是___________ 、数据操作和完整性约束规则。
2、事务故障包括事物内部故障、_________、介质故障、计算机病毒。
数据库原理题库
1. 数据库的三个基本概念是什么?
答: 数据库管理系统 (DBMS)、数据模型和数据结构。
2. 什么是数据库事务?
答: 数据库事务是指一系列数据库操作的逻辑单元,这些操作
要么全部成功执行,要么全部回滚到操作之前的状态。
3. 什么是关系型数据库?
答: 关系型数据库是一种基于关系模型的数据库,数据以行和
列的形式存储在表中,并且各个表之间通过键值进行关联。
4. 什么是SQL?
答: SQL (Structured Query Language) 是一种用于管理关系型数
据库的语言,它可以用于创建、修改和查询数据库中的数据。
5. 什么是索引?
答: 索引是数据库中用于快速查找数据的数据结构,它可以大
大加快查询的速度。
6. 数据库的ACID属性是什么意思?
答: ACID 是指数据库事务应具备的四个特性,分别是原子性、一致性、隔离性和持久性。
7. 什么是数据完整性?
答: 数据完整性是指数据库中的数据应符合预定义的完整性规则,例如主键约束、唯一性约束、外键约束等。
8. 什么是关系型数据库设计的三个范式?
答: 关系型数据库设计的三个范式分别是第一范式 (1NF)、第二范式 (2NF) 和第三范式 (3NF)。
9. 什么是数据库连接池?
答: 数据库连接池是为了提高数据库访问性能而创建的一个缓冲池,它保持着一定数量的数据库连接供应用程序使用。
10. 什么是数据库备份和恢复?
答: 数据库备份是指将数据库的数据和结构复制到其他介质中以防止数据丢失,而数据库恢复是指从备份中恢复数据到原始状态。
《数据库技术及应用》一、单项选择题(30分)1. 关系数据库中,实现实体之间的联系是通过表与表之间的()A公共索引B公共存储C公共元组D公共属性2. 事务日志是用于保存()A数据操作B对数据库的更新操作C程序运行过程D程序的执行结构3. 数据库物理设计的任务是设计数据库的( )A.外模式B.内模式C.概念模式D.三者都不是4. 一位教师可以教多门课,一门课只能由一位教师来教。
在E-R数据模型中,这种联系属于( )。
A. 1:1 B. 1:n C. m:n D. 无法确定5. 对于学生基本信息表来说,下列( )作为其主键最合适。
A. 学号B. 学号及姓名C. 系号和学号D. 系和姓名6. 事务在执行时,所遵循的“要么全做,要么不做”这是事务的( )性质。
A. 封装性B. 执行的原子性C. 彼此的隔离性D. 作用的持久性7. 下面产品中,属于关系数据库管理系统的是()A . ORACLEB . DELPHIC . AUTOCAD D. POWERBULDER8.下列SQL语句中,用于建立索引的语句是()A CREATE DATABASEB CREATE TABLEC CREATE VIEWD CREATE INDEX9.SQL语句中,FROM子句对应()A投影运算B并操作C笛卡儿积操作D选择操作10.与之等价的SQL语句是()A SELECT * FROM RB SELECT a FROM RC SELECT a,b FROM R WHERE a>bD SELECT a,b,c FROM R WHERE a>b11.SQL中的视图提高了数据库系统的()A完整性B并发控制C隔离性D安全性12.如果要修改表的结构,应该使用SQL语句的()语句A CHANGE TABLEB MODIFY TABLEC ALTRER TABLED UPDATE TABLE13. 职工号在一个视图中可能当作字符串,而在另一个视图中可能被当作整数,这是( ) A.命名冲突B.概念冲突C.域冲突D.约束冲突14.在关系数据库中,数据字典只保存()A数据B元数据C表名D属性名15.SQL的DML语句包括()A. JOIN,PROJECT,AND和NOTB. SELECT,INSERT,ROLLBACK和COMMITC. AND,OR,NOT和UNIOND. SELECT,INSERT,SELETE和UPDA TE二、填空题(20分)1. 一个数据库系统主要由()、()、()、()和()等5部分构成。
数据库原理及应用复习思考题四及答案一、单选题(每题2分,共20分)1、用树型结构来表示实体之间联系的模型称为()。
A、关系模型B、层次模型C、网状模型D、记录模型2、()是长期存储在计算机内的有组织,可共享的数据集合。
A、数据库管理系统B、数据库系统C、数据库D、文件组织3、在数据库设计中,将E-R图转换成关系数据模型的过程属于()。
A、需求分析阶段B、逻辑设计阶段C、概念设计阶段D、物理设计阶段4、现有学生关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业,出生日期),这个关系表的主关键字是()。
A、宿舍编号B、学号C、宿舍地址,姓名D、宿舍编号,学号5、同一个关系模型的任两个元组值( )。
A、不能全同B、可以全同C、必须全同D、以上都不是6、在SQL中,与关系代数中的投影运算对应的子句是()。
A、SELECTB、FROMC、WHERED、ORDER BY7、语句DELETE FROM SC表明()。
A、删除SC中的全部记录B、删除基本表SCC、删除基本表SC中的列数据D、删除基本表SC中的部分行8、关系笛卡尔积运算记号R×S表示()。
A、R为关系名,S为属性名B、R和S均为属性名C、R为属性名,S为关系名D、R和S均为关系名9、常见的数据模型有三种,它们是()。
A、网状、关系和语义B、层次、关系和网状C、环状、层次和关系D、字段名、字段类型和记录10、SQL的GRANT和REVOKE语句主要用来维护数据库的()。
A、安全性B、完整性C、可靠性D、一致性二、填空题(每空2分,共20分)1、属性的取值范围称为该属性的。
2、包含在任何一个候选关键字中的属性称为,不包含在任何一个候选关键字中的属性称为。
3、构成E-R图的三个基本要素为、、。
4、删除基本表用______________语句,删除基本表的元组用_____________语句5、数据库系统的核心是____________________。
判断题:判断下列模式分别属于哪个范式(最高范式)并说明理由。
1.R({A,B,C},{(A,C)->B,(A,B)->C,B-〉C})答:1NF,由题目可知,关系的候选码为(A,C)和(A,B),B→C表明存在对码的部分依赖,所以这只能是1NF。
2.R({S#,SD,SL,SN},{S#—〉SD,S#->SN,S#—〉SL,SD—〉SL})答:2NF,由题目可知,关系的码为S#,模式中存在对码的传递依赖。
判断下题中给出的命题是否正确,若不对,请给出你认为正确的答案。
如一组事务是按一定的顺序执行的,则称这组事务是可串行的。
答:错误.根据可串行化的定义,多个事务并发执行时,当且仅当起执行的结果与这一组事务按某一次序串行地执行结果相同,才能称这种调度策略为可串行化。
各种调度的策略会产生不同的结果,但未必与串行的结果相同,所以它们不都是可串行的。
简答题:1.在数据库中为什么要有并发控制?答:数据库是一个共享资源,它允许多个用户同时存取修改同一数据。
若系统对并发操作不加控制,就可能产生错误的结果,如存取和存储不正确的数据,破坏数据库一致性等。
并发控制的目的,就是要以正确的方式调度并发操作,避免造成各种不一致性,使一个事务的执行不受另一个事务的干扰。
2.试述数据库中完整性的概念,类型及你所了解的系统完整性检查方法。
答:数据库的完整性是指数据的正确性和相容性,为了防止不合语义的数据进入数据库。
系统完整性检查方法有多种,例如,在一句语句执行完后立即检查是否违背完整性约束即立即执行完整性检查。
有时完整性检查延迟到整个事务执行结束后再进行,检查正确方可提交,即延迟执行约束完整性检查,等等。
3.什么是数据模型,试述其组成成分.答:数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。
不同的数据模型是提供给我们模型化的数据和信息的不同工具.根据模型型应用的不同目的,可以将模型分成两类或两个层次:一是概念模型,是按用户的观点来对数据和信息建模,用于信息世界的建模.另一是数据模型,是按计算机系统的观点对数据建模,用于机器世界.一般地讲,数据模型是严格定义的概念的集合.这些概念精确地描述系统的静态特性、动态特性和完整性约束条件.数据模型通常有数据结构、数据操作和完整性约束三部分组成。
数据库期末考试复习题一、选择题。
1.数据库(DB)数据库系统(DBS)数据库管理系统(DBMS)三者之间的关系是(A)A.DBS包括DB和DBMSB.DBMS包括DB和DBSC.DB包括DBS和DBMSD.DBS就是DB也就是DBMS2.设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员之间的关系是(B)A.m:nB.1:mC.m:kD.1:13.对于关系的描述正确的是(D)A同一个关系中允许有完全相同的元祖。
B同一个关系中元祖必须按关键字升序存放。
C在一个关系中必须将关键字作为该关系的第一个属性。
D同一个关系中不能出现相同的属性名。
4.E-R图用于描述数据库的(A)A概念模型B数据模型C存储模型D逻辑模型5.关系模型的基本结构图是(D)A树B图C环D二维表(数据库系统概论p17)6关于关系数据技术,下列描述正确的是(D)A关系数据模型早于层次和网状数据模型问世。
B关系数据的一个格点既可以存储一个基本数据也可以存储另一个关系表。
C关系表的一个属性对应现实世界中的一个客观对象D关系代数中的并交差乘积运算实际上就是对关系的元组所实行的同名集合运算。
7关于数据模型下列叙述不正确的是(D)A数据模型提供了一种描述实体及其联系的方法与工具B数据模型是建立数据模式的工具,数据模式是数据模型在一个具体环境中的应用C数据模型包含一组描述数据结构,数据操作与数据完整性约束的规则。
D关系表中的列可以再分解8关系运算“交”可以使用其他基本关系运算替代,A∩B正确的替代表达式是(A)A.A-(A-B)B.A∪(A-B)C.∏B(A)D.A-(A-B)9关于规范化,下列叙述正确的是(C)A规范化是为了保证存储在数在数据库中的数据正确,有效,互相不出现矛盾的一组规则。
B规范化是为了提高数据查询速度的一组规则。
C规范化是为了解决数据库中插入删除修改异常等问题的一组规则。
D4种规范化范式各自描述不同的规范化要求,彼此没有关系。
数据库系统概论复习资料:第一章:三:简答题:1. 什么是数据库?答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。
数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。
因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。
2. 什么是数据库的数据独立性?答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。
逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性。
当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。
物理数据独立性是指数据的存储结构与存取方法(内视图)改变时,对数据库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立。
3. 什么是数据库管理系统?答:数据库管理系统(DBMS)是操纵和管理数据库的一组软件,它是数据库系统(DBS)的重要组成部分。
不同的数据库系统都配有各自的DBMS,而不同的DBMS各支持一种数据库模型,虽然它们的功能强弱不同,但大多数DBMS的构成相同,功能相似。
一般说来,DBMS具有定义、建立、维护和使用数据库的功能,它通常由三部分构成:数据描述语言及其翻译程序、数据操纵语言及其处理程序和数据库管理的例行程序。
4. 什么是数据字典?数据字典包含哪些基本内容?答:数据字典是数据库系统中各种描述信息和控制信息的集合,它是数据库设计与管理的有力工具,是进行详细数据收集和数据分析所获得的主要成果。
数据字典的基本内容有:数据项、数据结构、数据流、数据存储和处理过程5个部分。
第一章补充作业部分:假设教学管理规定:①一个学生可选修多门课,一门课有若干学生选修;②一个教师可讲授多门课,一门课只有一个教师讲授;③一个学生选修一门课,仅有一个成绩。
五、问答题
1、试述实现数据库安全性控制的常用方法?
答:实现数据库安全性控制的常用方法有:
(1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。
每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。
(2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。
(3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。
(4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
(5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。
2、什么是数据库中的自主存取控制方法和强制存取控制方法?
答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。
当用户对数据库访问时首先检查用户的存取权限。
防止了不合法用户对数据库的存取。
强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。
系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。
3、试述事务的概念及事务的四个特性。
恢复技术能保证事务的哪些特性?
答:事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,事务是一个不可分割的工作单元。
事务具有4个特性:原子性、一致性、隔离性和持续性。
原子性:事务是数据库的逻辑工作单位,事务中包括的操作要么都做,要么都不做。
一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
隔离性:一个事务的执行不能被除数其他事务干扰。
即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
持续性:持续性也称为永久性,指一个事务一旦提交,它对数据库中数据的改变就应该是永久生效的。
接下来的其他操作或故障不应该对其执行结果有任何影响。
恢复技术能保证事务的原子性、持久性。
4、数据库运行可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据?答:数据库系统中可能发生各种各样的故障,大致可分为:事务内部故障;系统故障;介质故障;计算机病毒。
事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。
5、数据库恢复的基本技术有哪些?
答:数据转储和登录日志文件是数据库恢复的基本技术。
当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的
某个一致性状态。
6、什么是日志文件?为什么要设立日志文件?
答:(1)日志文件是用来记录事务对数据库的更新操作的文件。
(2)设立日志文件的目的是:进行事务故障恢复;进行系统故障恢复;协助后备副本进行介质故障恢复。
7、登记日志文件时为什么必须先写日志文件,后写数据库?
答:把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。
有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。
如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。
如果先写日志,但没有修改数据库,在恢复时只不过是多执行一次UNDO操作,并不会影响数据库的正确性。
所以一定要先写日志文件,即首先把日志记录写到日志文件中,然后写数据库的修改。
8、并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?
答:并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据。
(1)丢失修改(Lost Update):两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了)T1提交的结果,导致T1的修改被丢失。
(2)不可重复读(Non-Repeatable Read):不可重复读是指事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。
(3)读“脏”数据(Dirty Read):读“脏”数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为“脏”数据,即不正确的数据。
避免不一致性的方法和技术就是并发控制。
最常用的并发控制技术是封锁技术。
也可以用其他技术,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制。
9、什么是封锁?基本的封锁类型有几种?试述它们的含义。
答:封锁就是事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁。
加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。
封锁是实现并发控制的一个非常重要的技术。
基本的封锁类型有两种:排它锁(Exclusive Locks,简称X锁) 和共享锁(Share Locks,简称S锁)。
排它锁又称为写锁。
若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。
这就保证了其他事务在T释放A上的锁之前不能再读取和修改A。
共享锁又称为读锁。
若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。
这就保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。
10、如何用封锁机制保证数据的一致性?
答:数据库管理系统DBMS要求事务在对数据对象进行读、写操作之前首先对该数据执行封锁操作,这样,当其他事务请求对该数据对象加锁时将被拒绝,只能等待。
DBMS按照一定的封锁协议,对并发操作进行控制,使得多个并发操作有序地执行,就可避免丢失修改、不可重复读和读“脏”数据等数据不
一致性。
六、数据库设计P38 12
P234 12 对应P38的12题
仅列出主要属性。
一对多联系将一方的主键加入多方的关系模式中,多对多联系单独转换为一关系模式。
学校(学校名,地址,电话,邮编)
系( 系编号, 系名, 电话, ……)
班级( 班级编号, 班级名, ……, 系编号)
教研室( 教研室编号, 教研室名, ……, 系编号)
学生( 学号, 姓名, 性别, ……, 班级编号, 导师职工号)
教员( 职工号, 姓名, 职称, ……, 系编号)
课程( 课程号, 课程名, ……)
选修( 学号, 课程号, 成绩)
P234 12对应P38的13题
产品( 产品编号, 产品名称, ……,仓库号)
零件( 零件号, 零件名称)
原材料( 原材料编号, 原材料名称, 类别, 仓库编号, 库存量)
仓库( 仓库编号, 仓库名)
产品组成(产品号, 零件号, 使用零件量)
零件制造(零件号, 原材料编号, 使用原材料量)
零件储存( 零件号, 仓库号, 存储量)
读者( 借书证号, 姓名, 地址, 性别, 年龄, 工作单位)
书( 书号, 书名, 作者, 出版社)
借书( 序号, 借书证号, 书号, 借出日期, 应还日期, 备注信息)
说明:这里以“序号”作为借书的主键,主要是针对如下特殊的借书情况:某读者借了某本书阅读完后归还给图书馆了,但过了一段时间后刚巧又借了同一本书——这样(借书证号,书号)就不能作为借书关系模式的主键了,这里的“序号”是自动生成的编号,肯定不会重复。