山东大学数据库系统简答题整理(个人向)

本文深入解析数据库系统核心概念,涵盖数据、数据库、数据库管理系统(DBMS)及数据库系统(DBS)等基本元素,详述关系模型完整性,数据模型要素,文件系统与数据库系统差异,以及动态SQL、嵌入式SQL等高级主题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一章+第二章
1.四个基本概念
数据(Data)
数据是数据库中存储的基本对象
数据的定义:描述事物的符号记录
数据库(Database,简称 DB)
数据库是长期储存在计算机内、有组织的、可共享的大量数据集合
数据库的特征:数据按一定的数据模型组织、描述和储存;可为各种用
户共享;冗余度较小;数据独立性较高;易扩展
数据库管理系统(Database Management System,简称
DBMS)
数据库管理系统由一个互相关联的数据的集合和一组用以访问这些数据
的程序组成,是位于用户与操作系统之间的一层数据管理软件
DBMS 的目标:科学地组织和存储数据、高效方便地获取和维护数据
DBMS功能
(1)数据定义功能:DBMS提供数据描述语言(DDL),用户可通过它来定义数据对象。
(2)数据操纵功能:DBMS还提供数据操纵语言(DML),实现对数据库的基本操作:查询、插入、删除和修改。
(3)数据库的运行管理:这是DBMS运行时的核心部分,它包括并发控制,安全性检查,完整性约束条件的检查和执行,发生故障后的恢复等。
(4)数据库的建立和维护功能: 它包括数据库初始数据的输入及转换,数据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等。

数据库系统(Database System,简称 DBS)
数据库系统是指在计算机系统中引入数据库后的系统构成。在不引起混
淆的情况下常常把数据库系统简称为数据库
数据库系统的构成:数据库管理系统(及其开发工具)、应用系统、数
据库管理员(和用户)
数据库完整性
定义:是指数据库中数据的正确性和相容性,由各种各样的完
整性约束来保证,是数据库设计的重要组成部分,完整性约束可以
通过 DBMS 或应用程序来实现
2.关系模型完整性
实体完整性和参照完整性:关系模型必须满足的完整性约束条件,称为
关系的两个不变性,由关系系统自动支持
用户定义的完整性:应用领域需要遵循的约束条件,体现了具体领域中
的语义约束,用户定义后,由关系系统自动支持
实体完整性(Entity Integrity):关系的主码中的所有属性值不能为
空值
参照完整性(Referential Integrity):如果关系 R 的外部码 Fk 与关
系 S 的主码 Pk 相对应(R 和 S 可以是同一个关系),则 R 中的每一个元组的 Fk
值或者等于 S 中某个元组的 Pk 值,或者为空值
用户定义的完整性(User-defined Integrity):用户针对具体的应用
环境定义的完整性约束条件

3.数据模型的三大要素是什么?
数据操作,数据结构,完整性约束

4.简述文件系统和数据库系统之间的区别与联系。
区别:
文件系统 数据库系统
程序和数据有一定的联系 程序和数据分离
用操作系统中的存取方法对数据进行管理 用DBMS对数据进行管理
实现以文件为单位的数据共享 实现以记录和字段为单位的数据共享
用文件将数据长期保存在外存上 用数据库统一存储数据
联系:均为数据组织的管理技术,均有数据管理软件管理数据,程序与数据之间用存取方法进行转换,数据库系统是基于文件系统的。

第三章
1.空值:
空值就是表示“无意义”,当实体在某个属性上没有值时设为null;或者表示“值未知”,即值存在,但目前没有获得该信息。

第四章
1.试述视图的作用?
(1)视图能够简化用户的操作。
(2)视图使用户能以多种角度看待同一数据。
(3)视图对重构数据库提供了一定程度的逻辑独立性。
(4)视图能够对机密数据提供安全保护。

2.说明视图与基本表的区别和联系。
视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表,数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制。

3.物化视图:
即实体化视图,它确实存放有物理数据。物化视图包含定义视图的查询时所选择的基表中的行。对物化视图的查询就是直接从该视图中取出行。
物化视图目的:
使用物化视图的目的是为了提高查询性能,是以空间换时间的一种有效手段,更少的物理读/写,更少的 cpu 时间,更快的响应速度;规模较大的报表适合使用物化视图来提高查询性能。

4.简述等值连接与自然连接的区别和联系。
连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组,即等值连接为:R∞S={trts| tr∈R∧ts∈S∧tr[A]=ts[B]}A=B
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。
第五章
1.动态SQL与嵌入式SQL:
动态sql:通用程序设计语言可以通过函数或者方法来连接数据库服务器并与之交互。利用动态sql可以在运行时以字符串形式构建sql查询,提交产寻,然后把结果存入程序变量中,每次一个元组。动态sql的sql组件允许程序在运行时构建和提交sql查询。
嵌入式sql:提供了另外一种使程序与数据库服务器交互的手段。嵌入式SQL必须在编译时全部确定,并交给预处理器。预处理程序提交sql语句到数据库系统进行变异和优化,然后将sql语句替换成相应代码和函数,最后调用程序语言的编译器进行编译。
第六章
1.关系中的元组有先后顺序吗?为什么?
答:没有。关系是元组的集合,而集合中的元素是没有顺序的,因此关系中的元组也就没有先后顺序。
第七章
1.弱实体集定义:一个实体集的所有属性都不足以形成主码,弱实体集必须依赖于强实体集,称作它的标识实体集或者属主实体集。

2. 数据库设计分哪几个阶段?
数据库设计分以下六个阶段:
(1)需求分析
(2)概念结构设计
(3)逻辑结构设计
(4)物理结构设计
(5)数据库实施
(6)数据库运行和维护
第十章
1.常见的存储介质
①高速缓冲存储器(Cache)
②主存储器(Main memory)
③快闪存储器 (Flash memory)
④光学存储器(CD-ROM/DVD)
⑤磁盘
⑥磁带存储器
注:①②都为易失性存储介质,cache 和主存配合工作。
③④⑤⑥都为非易失性存储介质,磁盘是主要的辅存,磁带主要用来脱机
备份。

2.存储层次
①基本存储
访问速度最快的存储介质,但是易失(cache, 主存),可以直接被 cpu 访问。
②辅助存储
层次结构中基本存储介质的下一层介质, 非易失, 访问速度较快。如:闪存,
磁盘
③第三级存储
层次结构中最底层的介质, 非易失,访问速度慢。如:磁带, 光学存储器

3.RAID技术:
RAID是一种把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组,从而提供比单个硬盘更高的存储性能和提供数据备份技术。组成磁盘阵列的不同方式成为RAID级别。
通过引入冗余来提高可靠性,存储正常情况下不需要的额外信息,以便在数据故障时修复数据。通过并行来提高性能,将数据按位级拆分或块级拆分拆分到多张磁盘,从而达到并行读取数据,提高传输速率。
第十一章
1.简述何时需要建立聚簇索引,以及它的优缺点。
如果经常需要按照某搜索码(在文件中查找记录的属性或属性集)做查找或者排序操作,可在该搜索码上建立聚簇索引,使得数据文件的记录顺序按照搜索码的顺序排序。
优点:利用搜索码上的聚簇索引,可以基于搜索码属性做高效的查找和排序操作;聚簇索引可以采用稀疏方式存储,节省索引的存储成本。
缺点:聚簇索引要求数据文件的记录顺序按照搜索码的顺序排序,因而在一个关系上只能建立一个聚簇索引。如果基于非聚簇索引(辅助索引)的搜索码进行查找操作,成本会相对高一些。

2.索引:
索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。 索引提供指向存储在表的指定列中的数据值的指针,然后根据指定的排序顺序对这些指针排序。
索引优点:
第一, 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。
第二, 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
第三, 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。
第四, 在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
第五, 通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。索引
索引类型:
顺序与散列:
顺序索引:基于值的顺序排序
散列索引:基于将值平均分布到若干散列桶中。一个值所属的散列桶是由一个散列函数决定的。
聚集索引与非聚集索引:
聚集索引:数据表的物理顺序与索引的制定顺序相同的索引。
非聚集索引:数据表的物理顺序与索引指定的顺序不同的索引。

稠密索引与稀疏索引:
稠密索引:每个搜索码的值都有一个索引项
稀疏索引:只为搜索码的某些值建立索引项,只有当关系按搜索码排列顺序存储时才能使用稀疏索引,也就是只有当索引是聚集索引时才能使用稀疏索引

3.索引顺序文件的缺点及B+树索引优缺点
(1) 索引顺序文件的缺点(主要在结构方面)
①随着文件的增大,由于许多溢出块会被创建,索引查找性能和数据顺序扫描性能都会下降。
②插入和删除时,频繁重组整个文件。
(2) B+树索引文件的优点
①在数据插入和删除时,能够通过小的自动调整来保持平衡。
②不需要重组文件来维持性能。
(3) B+树索引文件的缺点
增加文件插入和删除的时间开销,同时会增加空间开销。这是因为插入和删除可能会引发 B+树的调整,并且树形结构比线性存储需要更大的空间。
总结:相较于顺序存储时频繁地调整整个文件,B+树只需要在局部调整以维持平衡,并且 B+树查找每个叶节点的性能非常稳定。所以我们可以接受一定的时间和空间开销,使用这种数据结构。

第十四章
1.事务的定义及其特性
答:事务是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。
事务的ACID特性:
原子性(Atomicity) 事务中包含的所有操作要么全做,要么全不做
一致性(Consistency) 事务的隔离执行必须保证数据库的一致性
隔离性(Isolation) 系统必须保证事务不受其它并发执行事务的影响
持久性(Durability) 一个事务一旦提交之后,它对数据库的影响必须是永久的。
2.

3、试叙述“串行调度”与“可串行化调度”的区别。
如果多个事务依次执行,则称事务串行调度。
如果利用分时的方法,同时处理多个事务,则称为事务的并发调度。如果一个并发调度的结果与某一串行调度执行结果等价,则称这个并发调度是可串行化调度。

第十五章
1.两阶段封锁:
可以保证可串行性。在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁。两段锁协议要求每个事物分成两个阶段提出加锁和解锁申请:
增长阶段:事物可以获得封锁,不能释放锁;
缩减阶段:事物可以释放锁,但不能获得新锁。

2.证明为什么两阶段封锁协议能够保证事务集合的可串行化。
采用反证法,假定两阶段封锁协议不能保证可串行化,则存在一个遵循两阶段封锁协议的事务集合T0, T1, …, Tn-1产生了一个非串行的调度,那么在其优先图中会有一个环。不失一般性,假定优先图中的环是T0 T1 T2… Tn-1 T0,让ai对应事务Ti获得到最后一个锁的时间(即事务Ti的封锁点)。因而对于所有的事务Ti<Tj,都有ai < aj,对于这个环,我们就有 a0 a1 a2 … an-1 a0,存在矛盾,因此假设不成立。
所以,两阶段封锁协议能够保证事务集合的可串行化。

3.简述三级封锁协议的内容以及不同级别的封锁协议能解决哪些数据不一致性问题?
(1)一级封锁协议是:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。一级封锁协议能够解决“丢失修改”问题。
(2)二级封锁协议是:一级封锁协议加上事务在读取数据R之前必须先对其加S锁 ,读完后即可释放S锁。二级封锁不仅可以解决“丢失修改”问题,而且可以解决读“脏“数据问题。
(3)三级封锁协议是:一级封锁协议加上事务在读取数据R之前必须先对其加S锁,直到事务结束才释放。三级封锁协议不仅解决了“丢失修改”、读“脏”数据问题,而且进一步解决了“不可重复读”问题。
4.简述数据库并发操作通常会带来哪些问题。(智库p71)
丢失修改(lost update)不可重复读(non-repeatable read)读“脏”数据(dirty read)
第十六章
1.登记日志文件时必须遵循什么原则?
(1)登记的次序严格按并发事务执行的时间次序。
(2)必须先写日志文件,后写数据库。
2.数据库系统的故障有哪些类型?
答:故障主要有下面三种类型:
(1)事务故障(2)系统故障(3)介质故障
3.简述系统故障时的数据库恢复策略。
(1)正像扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入REDO队列。同时找出故障发生时尚未完成的事务,将其事务标识记入UNDO队列。(2)对UNDO队列中的各个事务进行撤销处理。(3)对REDO队列中的各个事务进行重做处理。

一、简答题 1、什么是数据与程序的物理独立性?什么是数据与程序的逻辑独立性? ①物理独立性是指用户的应用程序与数据库中数据的物理存储是相互独立的。也就是说,数据在数据库中怎样存储是由数据库管理系统管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变时应用程序不用改变。 ②逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的。也就是说,数据的逻辑结构改变时用户程序也可以不变。 2、试述等值连接与自然连接的区别和联系。 连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。 3、试述实现数据库安全性控制的常用方法和技术。 ( l )用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。 **( 2 )存取控制:**通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。例如CZ 级中的自主存取控制( DAC ) , Bl 级中的强制存取控制(MAC )。 **( 3 )视图机制:**为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。 ( 4 )审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA 可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。 **( 5 )数据加密:**对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。 4、试述关系模型的三类完整性规则,并举例说明。 实体完整性:所谓的实体完整性就是指关系(所谓的关系就是表)的主码不能取空值; 例子: (1) 实体完整性规则:若属性 A 是基本关系 R 的主属性,则属性 A 不能取空值。 **参照完整性:**是指参照关系中每个元素的外码要么为空(NULL),要么等于被参照关系中某个元素的主码; 例子: (2) 参照完整性规则:若属性(或属性组) F 是基本关系 R 的外码,它与基本关系 S 的主码 K s 相对应(基本关系 R 和 S 不一定是不同的关系),则对于 R 中每个元组在 F 上的值必须为: 或者取空值( F 的每个属性值均为空值); 或者等于 S 中某个元组的主码值。 用户定义的完整性:指对关系中每个属性的取值作一个限制(或称为约束)的具体定义。 5、一个不好的模式会有些什么问题? ①数据冗余 ②更新异常 ③插入异常 ④删除异常 6、数据库设计中,需求分析的任务是什么?调查的内容是什么? 需求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统手工系统或计算机系统)工作概况明确用户的各种需求,然后在此基础上确定新系统的功能。 **调查的内容是“数据”和“处理”**即获得用户对数据库的如下要求: (1)信息要求指用户需要从数据库中获得信息的内容与性质由信息要求可以导出数据要求即在数据库中需要存储哪些数据。 (2)处理要求指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理。 (3)安全性与完整性要求 7、什么是索引?索引的作用。 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。 建立索引是加快查询速度的有效手段,数据库索引类似于图书后面的索引,能快速定位到需要查询的内容,用户可以根据应用环境的需要在基本表上建立一个或者多个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值