数据库简答论述

文章详细阐述了数据库设计的六个阶段,包括需求分析、概念设计、逻辑设计、物理设计、实施和运行维护。同时讨论了SQL的数据定义和操纵功能,以及数据库系统的三级模式和两级映像。此外,还提到了并发操作可能引发的数据不一致问题及避免方法,如封锁和时间戳等并发控制技术。最后,举例说明了系统故障恢复策略,并探讨了关系数据库的完整性原则,包括实体完整性、参照完整性和用户自定义完整性。
摘要由CSDN通过智能技术生成

1简述数据库设计6个阶段各自主要内容是什么。

数据库的设计分为以下6个设计阶段:需求分析、概念设计、逻辑设计、物理设计、数据库实施、数据库运行和维护。需求分析阶段:根据用户的需求收集数据。概念结构设计阶段:通过对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。逻辑结构设计阶段:将概念模型转换成某个DBMS所支持的数据模型,并对其进行优化。数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。数据库实施阶段:设计人员根据逻辑设计和物理设计的结果创建数据库,编制与调试应用程序,组织数据入库,并进行试运行。 数据库运行与维护是指对数据库应用系统正式投入运行后,在数据库系统运行过程中必须不断地对其进行评价、调整与修改。

2简述SQL数据定义、数据操纵包括哪些方面?

SQL的数据定义功能包括:模式定义 表定义 视图和索引的定义。数据操纵包括:插入数据、修改数据、删除数据

3.简述什么是数据库系统的三级模式和两级映像?

数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成,两层映像指:外模式/模式映像和模式/内模式映像。模式:也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。外模式:也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。内模式:也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。外模式/模式映像:当模式改变时,各个外模式/模式的映像作相应改变,使外模式保持不变,保证数据与程序的逻辑独立性。模式/内模式映像:当数据库的存储结构改变时,模式/内模式映像作相应改变,使模式保持不变,从而应用程序也不必改变,保证了数据与程序等物理独立性。

4.并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致情况?并发操作带来的数据不一致包括三类:丢失修改、不可重复读、读“脏”数据①丢失修改:两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了)T1提交的结果,导致T1的修改被丢失。②不可重复读:事务T1读取某一数据后,事务T2对其执行更新操作,使T1无法再现前一次读取结果。不可重复读包括三种情况:①事务T1读取某一数据后,事务T2对其做了修改,当事务T1再次读该数据时,得到与前一次不同的值②事务T1按一定条件从数据库中读取了某些数据记录后,事务T2删除了其中部分记录,当T1再次按相同条件读取数据时,发现某些记录消失了③事务T1 按一定条件从数据库中读取某些数据记录后,事务T2插入了一些记录,当T1再次按相同条件读取数据时,发现多了一些记录。③读“脏”数据:事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为“脏”数据,即不正确的数据。避免不一致性的方法是并发控制。常用的并发控制技术包括封锁方法、时间戳方法、乐观控制方法和多版本并发控制方法等。

5.考虑下图所示的日志记录,假设开始时A、B、C的值都是0。(1)如果系统故障发生在12之后,写出系统恢复后A、B、C的值;A=10,B=0,C=11(2)如果系统故障发生在10之后,写出系统恢复后A、B、C的值;A=10,B=0,C=11(3)如果系统故障发生在9之后,写出系统恢复后A、B、C的值;A=10,B=0,C=11(4)如果系统故障发生在7之后,写出系统恢复后A、B、C的值;A=10,B=0,C=11(5)如果系统故障发生在5之后,写出系统恢复后A、B、C的值。A=0,B=0,C=0

1.举例说明在关系模式中,关系、属性、候选码、主码、主属性的概念。

关系:关系是一张二维表,表的每行对应一个元组,表的每列对应一个域。属性:关系中每一列的名字称为属性。候选码:某一属性值能唯一标识元组的属性集而其子集不能。主码:若一个关系有多个候选码,则选择其中一个为主码。主属性:候选码的诸属性称为主属性。

2.简述SQL特点有哪些

①语言综合统一②数据操作高度非过程化③面向集合的操作方式④语言简洁,易学易用;⑤同一种语法结构提供多种使用方式。

3.简述在E-R图集成时需要解决哪些冲突。

属性冲突:属性域冲突, 属性取值单位冲突。命名冲突:同名异义, 异名同义,同名同义。结构冲突:同一对象在不同的应用中具有不同的抽象。同一实体在不同子系统的E-R图中所包含的属性个数和属性排列次序不完全相同。实体间的联系在不同的E-R图中为不同的类型。

4简述数据库系统常见的故障,并说明其恢复策略是什么。

事务故障:①反向扫描日志文件,查找该事务的更新操作②该事务的更新操作执行反操作,即对已经插入的新记录进行删除操作,对己删除的记录进行插入操作,对修改的数据恢复旧值,用旧值代替新值。这样由后向前逐个扫描该事务已做的所有更新操作,并做同样处理,直到扫描到此事务的开始标记,事务故障恢复完毕为止。系统故障:①正向扫描日志文件,查找尚未提交的事务,将其事务标识记人撤销队列。同时查找已经提交的事务,将其事务标识记入重做队列②对撤销队列中的各个事务进行撤销处理。方法同事务故障中所介绍的撤销方法。③对重做队列中的各个事务进行重做处理。进行重做处理的方法是正向扫描日志文件,按照日志文件中所登记的操作内容,重新执行操作,使数据库恢复到最近某个可用状态。

介质故障:①装入最新的数据库副本,使数据库恢复到最近一次转储时的可用状态。②装入最新的日志文件副本,根据日志文件中的内容重做已完成的事务。首先扫描日志文件,找出故障发生时己提交的事务,将其记入重做队列。然后正向扫描日志文件,对重做队列中的各个事务进行重做处理,方法是正向扫描日志文件,对每个重做事务重新执行登记的操作,即将日志记录中“更新后的值”写入数据库。

1.论述你对关系数据库完整性的认识。

关系数据库完整性是为了保证数据库中存储的数据是正确的,通过实体完整性、参照完整性、用户自定义完整性、触发器实现。①实体完整性;实体完整性含义:主属性不能取空值,实体完整性的定义:create table中用primary  key定义。实体完整性违约处理:拒绝

②参照完整性;参照完整性含义:外码可以取空值;被参照关系某个元组的主码值。参照完整性定义:create table中用foreign  key定义外码,用references短语指明外码所参照的表的主码。参照完整性违约处理;参照表:插入元组、修改外码值违约处理:拒绝

被参照表:删除元组、修改主码值违约处理:拒绝/级联/删除/设置为空值③用户自定义完整性;用户自定义完整性含义:反映某一具体应用所涉及的数据必须满足的语义要求。用户自定义完整性的定义:create table中用NOT NULL、UNIQUE、CHECK定义属性的约束条件,CHECK短语定义元组上的约束条件。用户自定义完整性违约处理:拒绝④触发器是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增、 删、改,操作均由服务器自动激活相应的触发器,可以使用CREATE TRIGGER命令建立触发器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值