《数据库》复试问答题总结

本文讨论了并发一致性问题的类型,包括丢失修改、读脏数据、不可重复读和幻影读。同时介绍了白盒测试中的各种覆盖方法,以及数据库设计中的范式、完整性约束和E-R图冲突。还涉及数据库安全性和故障处理策略,强调了冗余数据和容错在恢复过程中的重要性。
摘要由CSDN通过智能技术生成

并发一致性问题有那些?:
在并发环境下,事务间的隔离性很难保证,因此会出现并发一致性问题。

并发一致性问题主要有四类,即:丢失修改问题,读脏数据问题,不可重复读问题,幻影读问题。

丢失修改问题:T1和T2两个事务都对同一数据进行修改,T1先修改,T2随后修改,T2的修改覆盖了T1的修改。
读脏数据问题:T1修改了一个数据,T2随后读取了这个数据,但是T1又撤销了修改,此时T2读取到的数据就是脏数据。
不可重复读问题:T1读取了一个数据,T2随后修改了这个数据,T1再次读取这个数据时与之前读取的值不同。
幻影读问题:T1读取一个范围内的数据,T2随后插入了该范围内的一个数据,T1再次读取这个范围内的数据时,和第一次读的结果不同。

白盒测试主要有哪些覆盖?:
(1)语句覆盖 使程序中的每个可执行语句都能执行一次的测试用例

(2)判定覆盖(分支覆盖) 对于判断语句,在设计用例的时候,要设计判断语句结果为True和False的两种情况

(3)条件覆盖 设计用例时针对判断语句里面每个条件表达式true 和 false各取值一次,不考判断语句的计算结果

(4)判定条件覆盖(分支条件覆盖) 设计测试用例时,使得判断语句中每个条件表达式的所有可能结果至少出现一次,每个判断语句本身所有可能结果也至少出现一次。

(5)条件组合覆盖 设计测试用例时,使得每个判断语句中条件结果的所有可能组合至少出现一次

(6)路径覆盖 设计测试用例时,覆盖程序中所有可能的执行路径

覆盖方法的优点:这种覆盖方法可以对程序进行彻底的测试用例覆盖,比前面讲的五种方法覆盖度都要高。

覆盖方法的缺点:于路径覆盖需要对所有可能的路径进行测试(包括循环、条件组合、分支选择等),那么需要设计大量、复杂的测试用例,使得工作量呈指数级增长。路径覆盖虽然是一种比较强的覆盖,但未必考虑判断语句中条件表达式结果的组合,并不能代替条件覆盖和条件组合覆盖。

不符合范式的关系,会产生很多异常,主要有那些异常?:
不符合范式的关系,会产生很多异常,主要有以下四种异常:

冗余数据:例如 某个数据出现了两次。
修改异常:修改了一个记录中的信息,但是另一个记录中相同的信息却没有被修改。
删除异常:删除一个信息,那么也会丢失其它信息。例如删除了 数据A 需要删除第一行和第三行,那么 数据B的信息就会丢失。
插入异常:例如想要插入一个学生的信息,如果这个学生还没选课,那么就无法插入。

范式有那些,具体讲讲?:
**第一范式定义:**数据库表中的所有字段都是单一属性,不可再分的;这个单一属性是由基本的数据类型所构成的;如整数、浮点数、字符串等;换句话说:第一范式要求数据库中的表都是二维表;数据库中的表都是符合第一范式要求的。

**第二范式定义:**数据库的表中不存在非关键字段对任一候选关键字段的部分函数依赖。部分函数依赖是指存在着组合关键字中的某一关键字决定非关键字的情况。换句话说: 所有单关键字段的表都符合第二范式。

**第三范式:**第三范式是在第二范式的基础之上定义的。如果数据表中不存在非关键字段对任意候选关键字的传递函数依赖则符合第三范式

BC范式(Boyce.Codd)定义:在第三范式的基础之上,数据库表中如果不存在任何字段对任一候选关键字段的传递函数依赖则符合BC范式。也就是说如果是复合关键字,则复合关键字之间也不能存在函数依赖关系。
 

什么是计算机系统完整性?完整性约束条件作业的对象?
数据的完整性是指数据的正确性和相容性,防止不合语义的数据进入数据库。
**列:**对属性的取值类型、范围、精度等的约束条件
**元组:**对元组中各个属性列间的联系的约束
**关系:**对若干元组间、关系集合上以及关系之间的联系的约束

E-R 图的三种冲突?:

存在的冲突

(1).命名冲突:项名、项目名异名同义,统一命名为项目名;

(2).结构冲突:项目在两个局部 ER 图中,一个做多值属性,一个作实体。

(3).属性冲突。统一 为实体;运动队在两个局部图里的结构不一致也需统一。

视图的作用?:

作用:

①简化了操作,把经常使用的数据定义为视图。

②安全性,用户只能查询和修改能看到的数据。

③逻辑上的独立性,屏蔽了真实表的结构带来的影响。

数据库安全性控制的一般方法有那些?:
(1)环境级:对计算机系统的机房和设备加以保护,防止物理破坏。
(2)职员级:对数据库系统工作人员,加强劳动纪律和职业道德教育,并正确的授予其访问数据库的权限。
(3)操作系统级:防止未经授权的用户从操作系统层着手访问数据库。
(4)网络级:由于数据库系统允许用户通过网络访问,因此,网络软件内部的安全性对数据库的安全是很重要的。
(5)数据库系统级:检验用户的身份是否合法,检验用户数据库操作权限是否正确。
本节主要讨论数据库系统级的安全性问题。
数据库系统中一般采用用户标识和鉴别、存取控制、视图以及密码存储等技术进行安全控制。
 

数据库故障可分为?:
一、常见的四种故障
  (1)事务内部的故障:事务内部故障可分为预期的和非预期的,其中大部分的故障都是非预期的。
  (2)系统故障:系统故障也称为软故障,是指数据库在运行过程中,由于硬件故障、数据库软件及操作系统的漏洞、突然停电灯情况,导致系统停止运转,所有正在运行的事务以非正常方式终止,需要系统重新启动的一类故障。
  (3)介质故障:介质故障也称为硬故障,主要指数据库在运行过程中,由于磁头碰撞、磁盘损坏、强磁干扰等情况,使得数据库中的数据部分或全部丢失的一类故障。
  (4)计算机病毒故障:计算机病毒故障是一种恶意的计算机程序,它可以像病毒一样繁殖和传播,在对计算机系统造成破坏的同时也可能对数据库系统造成破坏(破坏方式以数据库文件为主)。
二、四种故障的解决方法
  (1)预期的事务内部故障:将事务回滚,撤销对数据库的修改。
  (2)非预期的事务内部故障:强制回滚事务,在保证该事务对其他事务没有影响的条件下,利用日志文件撤销其对数据库的修改。
  (3)系统故障:待计算机重新启动之后,对于未完成的事务可能写入数据库的内容,回滚所有未完成的事务写的结果;(即撤销所有未提交的事务,重做所有已提交的事务)。
  (4)介质故障的软件容错:使用数据库备份及事务日志文件,通过恢复技术,恢复数据库到备份结束时的状态。
  (5)介质故障的硬件容错:采用双物理存储设备,使两个硬盘存储内容相同,当其中一个硬盘出现故障时,及时使用另一个备份硬盘。
  (6)计算机病毒故障:使用防火墙软件防止病毒侵入,对于已感染病毒的数据库文件,使用杀毒软件进行查杀,如果杀毒软件杀毒失败,此时只能用数据库备份文件,以软件容错的方式恢复数据库文件。
  这四类故障虽然有所不同,但是对数据库的影响无外乎是对数据库本身的破坏或对数据库中数据的破坏,其恢复的基本原理概况起来也就是利用存储在别处的冗余数据来重建数据库中的数据。

 

  • 15
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库系统概论是一门重要的考研科目,其复试问答题主要考察考生对数据库系统的理解和应用能力。下面我将用300字回答一个CSDN上出现的概述类问题问题:请简述数据库系统的定义、特点和作用。 数据库系统是一种用于管理和组织数据的软件系统,它包含数据库数据库管理系统(DBMS)和应用程序。数据库是数据的集合,DBMS是管理和操作数据库的软件,应用程序则通过DBMS对数据库进行操作和访问。 数据库系统的特点包括: 1. 数据共享:数据库系统允许多个用户同时访问和共享数据,提高了数据的共享性和协作性。 2. 数据独立性:数据库系统实现了数据与应用程序之间的逻辑独立性和物理独立性,使得数据的修改不影响应用程序的运行。 3. 数据完整性:数据库系统通过设定完整性约束和实施权限控制来保证数据的完整性和安全性。 4. 数据持久性:数据库系统通过将数据持久化存储在磁盘中,保证数据在系统故障或断电后仍能恢复和使用。 数据库系统的作用主要体现在以下几个方面: 1. 数据管理:数据库系统提供了方便的数据管理功能,包括数据的存储、查询、修改、删除等操作。通过SQL语言和数据库查询语句,用户可以灵活地进行数据操作。 2. 数据共享和集成:数据库系统通过统一的数据模型和数据字典,方便不同应用程序之间的数据共享和集成,提高了信息的共享效率和数据的一致性。 3. 数据安全和完整性:数据库系统提供了权限控制和完整性约束等机制,保障数据的安全性和一致性。只有经过授权的用户才能访问或修改数据,从而保护了数据的机密性和完整性。 4. 决策支持:数据库系统通过数据的存储和查询,提供了可靠的数据支持和分析能力,帮助用户进行决策和管理。 综上所述,数据库系统是一种用于管理和操作数据的软件系统,具有数据共享、数据独立性、数据完整性和数据持久性等特点。它主要用于数据管理、数据共享和集成、数据安全和完整性以及决策支持等方面,对于提高数据的管理效率、数据的共享与集成以及决策的科学性都起到了重要作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值