2026年软考-数据库系统工程师真题及答案解析_第1页
2026年软考-数据库系统工程师真题及答案解析_第2页
2026年软考-数据库系统工程师真题及答案解析_第3页
2026年软考-数据库系统工程师真题及答案解析_第4页
2026年软考-数据库系统工程师真题及答案解析_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026年软考-数据库系统工程师真题及答案解析一、上午试题1.计算机中,若浮点数的阶码用移码表示,尾数用补码表示,则判断该浮点数是否为零的简便方法是()。A.阶码和尾数均为全0B.阶码为全0,尾数符号位为1,其余位为0C.阶码为全1,尾数为全0D.阶码为全0,尾数为全02.在Cache映射方式中,发生块冲突概率最低的是()。A.直接映射B.全相联映射C.组相联映射D.以上均不正确3.若某计算机系统的中断优先级从高到低依次为:一级中断、二级中断、三级中断和四级中断。若CPU正在执行三级中断处理程序时,发生了二级中断和四级中断,则CPU会()。A.先处理二级中断,后处理四级中断B.先处理四级中断,后处理二级中断C.只处理二级中断D.只处理四级中断4.在操作系统中,PV操作是实现进程同步与互斥的常用机制。若信号量S的初值为3,当前值为-1,则表示有()个等待进程。A.0B.1C.2D.35.软件开发中,用来描述数据流图中数据流向的图符是()。A.箭头B.圆圈C.双杠D.方框6.在面向对象技术中,对象之间通过消息进行通信。一个对象通常包含()。A.只有属性B.只有操作C.属性和操作D.属性、操作和消息7.以下关于编译程序和解释程序的说法中,错误的是()。A.编译程序不产生目标代码,解释程序产生目标代码B.编译程序产生目标代码,解释程序不产生目标代码C.编译方式执行效率高,解释方式调试方便D.解释方式逐条翻译执行,编译方式整体翻译后执行8.设有一个关系模式R(U,F),其中UA.无损连接性B.保持函数依赖性C.既无损连接又保持函数依赖D.既不无损连接也不保持函数依赖9.在关系代数中,设关系R有3个元组,关系S有2个元组,则R×A.1B.2C.3D.610.SQL语言中,用于删除表中数据的语句是()。A.DROPB.DELETEC.REMOVED.CLEAR11.数据库系统中,事务的原子性是指()。A.事务中包含的所有操作要么都做,要么都不做B.事务一旦提交,对数据库的改变是永久的C.一个事务的执行不能被其他事务干扰D.事务必须是使数据库从一个一致性状态变到另一个一致性状态12.设关系模式R(A,B,C,A.AB.AC.AD.A13.若关系R和S如下图所示,则R÷R:ABa1b1a1b2a2b1a2b2S:Bb1b2A.Aa1a2B.Aa1C.Aa2D.空集14.在数据库三级模式结构中,外模式与模式之间的映像保证了数据的()。A.物理独立性B.逻辑独立性C.数据安全性D.数据完整性15.索引文件中,B+树相比于B-树的优势在于()。A.更适合随机查找B.更适合范围查询C.树的高度更低D.节点利用率更高16.在数据库恢复技术中,检查点的作用是()。A.提高恢复效率B.保证事务的原子性C.实现并发控制D.检测死锁17.以下关于视图的说法,正确的是()。A.视图是物理存在的表B.视图可以像基本表一样进行增删改查操作C.视图能够简化复杂的查询D.视图数据独立存储在数据库中18.设某并发调度采用两阶段锁协议,则该调度一定是()。A.可串行化的B.冲突可串行化的C.避免死锁的D.可恢复的19.在分布式数据库系统中,分片透明性位于()。A.全局外模式与全局概念模式之间B.全局概念模式与分片模式之间C.分片模式与分配模式之间D.分配模式与局部物理模式之间20.数据仓库的特征中,反映数据变化历史的是()。A.面向主题B.集成性C.非易失性D.随时间变化21.在NoSQL数据库中,Cassandra属于()。A.键值存储B.列族存储C.文档存储D.图数据库22.下列关于E-R图中联系的描述,错误的是()。A.联系可以是1:1B.联系可以是1:nC.联系可以是m:nD.联系不能有属性23.若关系模式R属于2NF,则()。A.R一定属于1NFB.R一定属于3NFC.R一定属于BCNFD.R的主键一定只包含一个属性24.SQL语言中,实现授权的语句是()。A.GRANTB.REVOKEC.ALLOWD.PERMIT25.在关系数据库设计中,设计E-R图属于()。A.需求分析阶段B.概念结构设计阶段C.逻辑结构设计阶段D.物理结构设计阶段26.位示图法可用于磁盘空间的管理。设某系统磁盘块总数为128,若用字长为32位的字来构建位示图,共需要()个字。A.4B.5C.32D.12827.在哈希查找中,解决冲突的常用方法不包括()。A.开放定址法B.链地址法C.再哈希法D.二分查找法28.设有序表为(10,15,20,25,30,35,40,50,60,70),采用二分查找法查找25,需要比较的次数为()。A.2B.3C.4D.529.在TCP/IP协议簇中,负责将IP地址解析为MAC地址的协议是()。A.ARPB.RARPC.DNSD.ICMP30.下列算法中,最坏情况下时间复杂度为O(A.快速排序B.归并排序C.堆排序D.基数排序31.在数据库安全中,防止未授权用户存取数据库的机制是()。A.完整性约束B.触发器C.存取控制D.审计32.设有关系模式R(A,A.ABB.ACC.ADD.ABC33.在SQL中,与`WHEREageBETWEEN20AND30`等价的条件是()。A.`WHEREage>=20ANDage<=30`B.`WHEREage>20ANDage<30`C.`WHEREage>=20ORage<=30`D.`WHEREage>20ORage<30`34.数据库故障恢复中,REDO操作用于处理()。A.未完成的事务B.已提交但更新未写入磁盘的事务C.因故障导致非法操作的事务D.发生死锁的事务35.多粒度封锁协议中,意向锁的作用是()。A.提高并发度B.减少锁的开销C.方便检查冲突D.防止级联回滚36.在数据挖掘中,Apriori算法用于()。A.分类B.聚类C.关联规则挖掘D.孤立点检测37.下列关于聚簇索引的说法,正确的是()。A.一个表只能有一个聚簇索引B.聚簇索引的索引项与数据存储顺序无关C.聚簇索引通常用于频繁更新的列D.聚簇索引叶节点存储的是数据指针38.在关系模式规范化中,若X→Y且Y⧸A.平凡函数依赖B.非平凡函数依赖C.完全函数依赖D.部分函数依赖39.设R和S是两个关系,则等价于(RA.(B.(C.(D.(40.事务的隔离级别中,允许“不可重复读”但不允许“脏读”的是()。A.ReadUncommittedB.ReadCommittedC.RepeatableReadD.Serializable41.在数据库设计中,确定数据存取方法和存储结构属于()。A.需求分析B.概念设计C.逻辑设计D.物理设计42.下列关于关系模式的分解,正确的是()。A.分解一定能提高查询效率B.分解一定能消除冗余C.分解可能会丢失部分函数依赖D.分解后的模式范式级别一定高于原模式43.在SQL中,创建唯一索引的命令是()。A.CREATEINDEXidxONtable(col)B.CREATEUNIQUEINDEXidxONtable(col)C.CREATEDISTINCTINDEXidxONtable(col)D.CREATEINDEXidxONtable(col)UNIQUE44.设有栈S和队列Q,初始状态均为空。元素a,b,c,d,e,f依次入栈,出栈元素依次入队,最后出队序列为()。A.a,b,c,d,e,fB.f,e,d,c,b,aC.e,f,d,c,b,aD.f,e,d,c,b45.在KMP算法中,next数组的作用是()。A.记录模式串在主串中的位置B.记录模式串自身重复的信息C.记录主串的长度D.记录匹配失败后的回溯位置46.数据库的并发控制中,若事务T1对数据A加了共享锁,则事务T2对数据A()。A.只能加共享锁B.只能加排他锁C.不能加任何锁D.可以加共享锁或排他锁47.下列关于事务回滚的说法,错误的是()。A.回滚是撤销事务对数据库的修改B.回滚利用日志文件的前像进行C.回滚只能由系统故障触发D.回滚后事务处于中止状态48.在分布式数据库的两阶段提交协议中,协调者收到所有参与者“同意”消息后,应发送()命令。A.提交B.回滚C.准备D.询问49.关系代数表达式(RA.(B.RC.(A.R⋈50.某二叉树的前序序列为ABCDEF,中序序列为CBAEDF,则其后序序列为()。A.CBEFDAB.ABEDCFC.CBAEDFD.FEDCBA51.在数据库应用系统中,存储过程的主要优点不包括()。A.减少网络通信量B.提高执行效率C.实现模块化编程D.自动实现事务隔离52.触发器主要用于实现()。A.复杂的查询优化B.数据的完整性约束C.用户的身份认证D.数据库的备份恢复53.在关系模型中,实体完整性是指()。A.元组不可重复B.属性值不可为空C.主键值唯一且不为空D.外键值必须为空或引用真实存在的主键54.设关系R有1000个元组,关系S有500个元组,且R中每个元组在S中平均有10个匹配元组,若采用嵌套循环连接,则最大的I/O次数约为(假设内存只能容纳每个关系的一个数据块)()。A.1500B.5000C.50000D.10000055.下列关于范式,说法正确的是()。A.1NF要求非主属性完全函数依赖于码B.2NF消除了非主属性对码的传递依赖C.3NF消除了非主属性对码的部分和传递依赖D.BCNF消除了所有属性对码的传递依赖56.在数据压缩中,霍夫曼编码属于()。A.有损压缩B.无损压缩C.行程编码D.算术编码57.下列不属于数据库管理系统(DBMS)主要功能的是()。A.数据定义B.数据操纵C.数据运行管理D.数据库设计58.在SQL中,`ROLLBACK`语句的作用是()。A.提交事务B.回滚事务C.设置保存点D.释放锁59.若系统采用“日志先写”原则,目的是()。A.提高写入速度B.保证数据一致性C.减少日志文件大小D.方便审计60.在关系模式R(U,F)中,若XA.自反律B.增广律C.传递律D.合并律61.设有事务T1和T2,对数据对象A和B进行操作。若T1读A=10,T2读A=10,T1写A=20,T2写A=30,T1写B=...,T2写B=...,则该调度存在的问题是()。A.丢失修改B.不可重复读C.读“脏”数据D.幻读62.在分布式数据库查询处理中,半连接操作的主要目的是()。A.减少数据传输量B.加快本地连接速度C.实现全局优化D.保证数据一致性63.下列关于MongoDB的说法,正确的是()。A.是关系型数据库B.支持复杂的SQL查询C.存储文档结构D.支持严格的事务ACID特性64.数据库的转储分为静态转储和动态转储,动态转储的特点是()。A.转储期间不允许对数据库进行任何操作B.转储期间允许对数据库进行存取或修改C.转储速度快D.恢复简单65.在关系代数中,除法操作可以用来表示()。A.包含所有B.存在C.投影D.选择66.设关系R(A,B,A.3B.4C.5D.667.在数据库物理设计中,选择存取路径时,主要考虑()。A.磁盘空间利用率B.存取时间C.维护代价D.B和C68.下列关于实体-联系图中的基数约束,描述正确的是()。A.0..1表示可选,最多一个B.1..*表示必须,最多一个C.0..*表示必须,多个D.1..1表示可选,一个69.在事务调度中,若一个调度与某个串行调度等价,则称该调度是()。A.可恢复的B.无级联的C.冲突可串行化的D.严格可串行化的70.SQL标准中,定义基本表的语句是()。A.CREATETABLEB.CREATEINDEXC.CREATEVIEWD.CREATEDATABASE71.在数据仓库的星型模式中,中心是()。A.维度表B.事实表C.元数据D.视图72.设某哈希函数H(k)A.1B.2C.3D.473.数据库完整性约束条件中,列级约束、表级约束分别是()。A.涉及单个属性的约束,涉及多个属性的约束B.涉及多个元组的约束,涉及单个元组的约束C.静态约束,动态约束D.实体完整性,参照完整性74.在两阶段锁协议中,事务在对任何数据进行读、写操作之前,必须先获得该数据的()。A.意向锁B.共享锁或排他锁C.死锁检测D.时间戳75.下列属于数据库逻辑模型的是()。A.层次模型B.关系模型C.实体-联系模型D.面向对象模型二、下午试题试题一(共15分)阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某电商公司为了优化库存管理,欲开发一套库存管理系统。该系统主要管理商品、仓库、供应商及入库出库记录等信息。系统需求如下:1.一个仓库可以存放多种商品,一种商品可以存放在多个仓库中。系统需记录每种商品在各个仓库中的库存数量。2.商品信息包括:商品编号(唯一标识)、商品名称、规格型号、单价。3.仓库信息包括:仓库编号(唯一标识)、仓库名称、地址、联系电话。4.供应商信息包括:供应商编号(唯一标识)、供应商名称、联系人、联系电话。5.一个供应商可以供应多种商品,一种商品可由多个供应商供应。需记录每个供应商供应每种商品的供货价格。6.入库记录包括:记录编号、入库日期、商品编号、仓库编号、供应商编号、数量、经手人。7.出库记录包括:记录编号、出库日期、商品编号、仓库编号、数量、客户编号、经手人。【问题1】(5分)根据上述说明,设计E-R图。请使用说明中给出的术语,并给出联系类型。【问题2】(6分)将E-R图转换为关系模式。请标出每个关系模式的主键(下划线标出)和外键(括号内标出)。【问题3】(4分)若“入库记录”关系中,属性“记录编号”和“商品编号”组合作为主键,是否合理?请用100字以内文字说明理由。试题二(共20分)阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。【说明】某图书借阅系统数据库包含如下关系模式:图书(图书ID,书名,作者,出版社,出版日期,价格,库存量)读者(读者ID,姓名,性别,电话,最大借阅数)借阅(借阅ID,读者ID,图书ID,借出日期,归还日期,状态)其中,“状态”字段取值为'0'(表示未归还)或'1'(表示已归还)。系统业务规则如下:1.每位读者当前未归还的图书数量不能超过其“最大借阅数”。2.若图书库存量为0,则不可借出。3.归还图书时,需更新借阅记录的状态和图书的库存量。【问题1】(6分)请用SQL语句创建“图书”表,要求图书ID为主键,书名非空,价格大于0。【问题2】(6分)现需查询借阅过“数据库系统教程”且尚未归还的读者姓名和借出日期。请写出相应的SQL查询语句。【问题3】(4分)为了提高按“书名”查询图书的效率,应在“书名”字段上建立什么类型的索引?请写出创建该索引的SQL语句。【问题4】(4分)若要统计每位读者借阅过的图书总数(包括已归还和未归还),请写出SQL语句。要求输出读者ID、姓名和图书总数。试题三(共20分)阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某银行转账系统中,设有事务T1和T2,分别执行以下操作序列:时间T1T2t1Read(A)t2Read(A)t3A=A-50t4A=A-100t5Write(A)t6Write(A)t7Read(B)t8B=B+100t9B=B+50t10Write(B)t11Write(B)假设A和B的初值均为1000。【问题1】(4分)若上述调度不加任何并发控制机制,会发生什么问题?请计算A和B的最终值,并说明该结果为何是错误的。【问题2】(8分)若采用严格的两阶段锁协议(2PL),请列出T1和T2的加锁和解锁顺序。要求:读操作前加共享锁(S),写操作前加排他锁(X),事务结束时释放所有锁。请用表格形式列出操作、锁动作及锁类型。【问题3】(8分)若采用时间戳排序协议,假设TS(T1)<TS(T2)。请详细描述T1和T2的执行过程,判断是否会发生回滚,并说明理由。试题四(共15分)阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】随着业务数据量的爆炸式增长,某社交平台公司决定引入分布式数据库技术来处理海量用户动态数据。经过选型,决定采用基于列族存储的NoSQL数据库(如Cassandra或HBase)来存储用户发布的内容。系统设计要求如下:1.数据模型需支持高效的用户动态查询,例如“查询用户U1在时间范围T1到T2内的所有动态”。2.数据需要高可用性和分区容错性,允许最终一致性。3.数据需要按时间倒序排列,以便快速获取最新动态。【问题1】(5分)请解释什么是列族存储模型?并结合场景,设计一个适合该社交平台的RowKey(行键)设计方案,说明理由。【问题2】(5分)在分布式数据库中,CAP定理指出一致性、可用性和分区容错性三者不可兼得。根据该系统的需求,应选择放弃哪一项?为什么?【问题3】(5分)为了提高读取性能,该系统在二级索引设计上采用了“倒排索引”技术。请简述倒排索引在NoSQL数据库中的应用原理及其在该场景下的作用。三、参考答案与解析【上午试题参考答案】1.D2.B3.C4.B5.A6.C7.A8.C9.D10.B11.A12.B13.A14.B15.B16.A17.C18.B19.B20.D21.B22.D23.A24.A25.B26.A27.D28.C29.A30.A31.C32.A33.A34.B35.C36.C37.A38.B39.C40.B41.D42.C43.B44.B45.B46.A47.C48.A49.A50.A51.D52.B53.C54.D55.C56.B57.D58.B59.B60.C61.A62.A63.C64.B65.A66.B67.D68.A69.C70.A71.B72.B73.A74.B75.B【上午试题解析】1.解析:在浮点数表示中,通常规定阶码为全0且尾数(或尾数的符号位和数值位)为全0时表示机器零。移码表示阶码,补码表示尾数,判断是否为零只需检查阶码和尾数是否全为0。2.解析:全相联映射允许主存中的任意一块映射到Cache中的任意一行,只有当Cache全部装满才会发生冲突,因此冲突概率最低,但比较电路复杂,成本高。3.解析:中断优先级高的可以打断优先级低的。二级中断优先级>三级中断>四级中断。CPU在执行三级中断时,来了二级和四级,先响应二级。处理完二级后,回到三级断点继续执行,此时四级中断已在等待,继续执行完三级后(或者三级处理过程中是否允许中断视具体设置,通常处理完当前响应高级),再响应四级。但题目问的是“发生了...则CPU会”,通常指立即响应行为。由于二级优先级最高,CPU会挂起三级,去处理二级。四级优先级低于三级,只能在三级处理完(且二级处理完)后才能处理。若三级处理过程中屏蔽了低级中断,则四级在三级恢复后才被响应。总之,先处理二级。4.解析:S.value=-1,表示有1个进程在等待(因为P操作使S减1,若S<0则阻塞,|S|即为等待进程数)。5.解析:数据流图(DFD)中,箭头表示数据流,圆圈表示加工,双杠表示数据存储,方框表示外部实体。6.解析:对象封装了属性(数据)和操作(方法/行为)。7.解析:编译程序将源代码整体翻译成目标代码(可执行文件),解释程序逐条翻译并执行,不产生目标代码保存。8.解析:判断无损连接性需计算ρ的连接是否等于R。或者利用chasetable。这里⋈⋈⋈的结果中,由于依赖链A→B→C→D→E连续,连接后可恢复所有属性,且不产生多余元组,无损连接。判断保持函数依赖:A→B在,B9.解析:笛卡尔积R×S的元组数为R的元组数乘以S的元组数,即10.解析:DROP用于删除表结构,DELETE用于删除表数据。11.解析:原子性是指事务中的操作是一个不可分割的整体,要么全做,要么全不做。12.解析:A=AD,由A→B,得ABD13.解析:除法R÷S的结果是在R中包含S中所有B值的A值。a1有b1,b214.解析:外模式/模式映像保证了数据的逻辑独立性(当模式改变时,只要调整映像,外模式可以不变)。15.解析:B+树的所有数据都存储在叶子节点,且叶子节点通过指针连接,非常适合范围查询。B-树的数据分布在各节点。16.解析:检查点记录了在检查点时刻所有正在运行的事务列表和日志地址。恢复时,只需检查点之后的活跃事务进行UNDO,检查点之后提交的事务进行REDO,大大减少扫描日志量。17.解析:视图是虚表,不物理存储。它能简化查询。但并非所有视图都支持更新(特别是包含聚合、DISTINCT等的视图)。18.解析:两阶段锁协议(2PL)保证调度是可串行化的(冲突可串行化),但不保证死锁。19.解析:分片透明性是最高级别的透明性,用户像使用集中式数据库一样使用分布式数据库,无需关心数据如何分片。它位于全局外模式与全局概念模式之间(或概念模式与分片模式之间,视具体模型分层,通常指用户看到全局关系,系统负责分片映射)。在标准参考模型中,分片透明性是指全局逻辑数据到分片数据的映射透明。20.解析:随时间变化是指数据仓库中的数据记录了从过去某一点到当前各个阶段的数据状态,反映了历史变化。21.解析:Cassandra是基于列族存储的NoSQL数据库。22.解析:联系可以拥有属性,例如“选修”联系可以有“成绩”属性。23.解析:2NF是基于1NF的,消除了非主属性对码的部分函数依赖。24.解析:GRANT用于授权,REVOKE用于回收权限。25.解析:E-R图设计属于概念结构设计阶段。26.解析:128个块,需要128个位。字长32位,则128/27.解析:二分查找法是查找算法,不是哈希冲突解决方法。28.解析:序列长度10。第一次查25,mid=35,25<35,左半;mid=20,25>20,右半;mid=25,找到。比较3次。注:题目序列为(10,15,20,25,30,35,40,50,60,70)。下标0-9。mid=4(30)。25<30,左0-3。mid=1(15)。25>15,右2-3。mid=2(20)。25>20,右3-3。mid=3(25)。找到。比较次数为4。29.解析:ARP(地址解析协议)将IP地址解析为MAC地址。30.解析:快速排序最坏情况(如已有序)为O()。归并和堆排序为O(31.解析:存取控制机制(自主存取控制、强制存取控制)防止未授权存取。32.解析:(AB=ABCD33.解析:BETWEEN...AND...是闭区间。34.解析:REDO(重做)针对已提交但修改可能还在缓冲区未刷盘的事务,确保持久性。35.解析:意向锁用于在多粒度封锁中快速判断上层节点与下层节点的锁冲突,避免逐个检查下层锁。36.解析:Apriori是经典的关联规则挖掘算法。37.解析:一个表只能有一个聚簇索引(因为数据只能按一种物理顺序存储)。聚簇索引的顺序就是数据物理顺序。38.解析:若Y⧸39.解析:R−S是在R中不在S中的元组。投影A后,是在R中出现但不出现在S中的A值。即R的投影减去40.解析:ReadCommitted(读已提交)可以避免脏读,但允许不可重复读和幻读。41.解析:物理设计阶段包括存取方法选择和存储结构设计。42.解析:分解若不满足无损连接,则无法通过连接还原。若不保持FD,则语义约束丢失。分解不一定提高效率(连接开销)。43.解析:CREATEUNIQUEINDEX。44.解析:栈是后进先出。a,b,c,d,e,f入栈,出栈顺序为f,e,d,c,b,a。进入队列后,队列是先进先出,出队顺序仍为f,e,d,c,b,a。45.解析:next数组(或失效函数)记录模式串自身的部分匹配信息,用于主串与模式串失配时,模式串右移的距离。46.解析:共享锁(S锁)与共享锁兼容,与排他锁(X锁)互斥。T2只能加S锁。47.解析:回滚可以由程序显式触发,也可由错误或死锁触发,不仅仅是系统故障。48.解析:2PC中,协调者收到所有参与者“Prepared”后,发送“Commit”命令。49.解析:选择操作尽早执行。涉及属性A,A在R中,故可下推到R上。50.解析:前序ABCDEF->根A,左子树前序BC,右子树前序DEF。中序CBAEDF->左子树中序CB,右子树中序EDF。左子树:前序BC,中序CB。根B,左C,右空。后序CB。右子树:前序DEF,中序EDF。根D,左E,右F。后序EFD。整体后序:CB(左)EFD(右)A(根)->CBEFDA。51.解析:存储过程不自动实现隔离,隔离由事务管理器和锁机制实现。52.解析:触发器由事件触发,执行被动操作,常用于复杂的业务规则和完整性约束。53.解析:实体完整性指主键不能为空且唯一。54.解析:嵌套循环循环:对于R中每个元组(1000),扫描S(500)。I/O次数约为1000×55.解析:3NF定义:若X→Y,Y是非主属性,则X必须是超码(消除传递依赖)且56.解析:霍夫曼编码是无损压缩。57.解析:数据库设计是DBA或开发人员的任务,不是DBMS的运行功能。58.解析:ROLLBACK回滚事务。59.解析:日志先写原则:修改数据前先写日志。保证发生故障时可以利用日志恢复,保证ACID。60.解析:X→61.解析:T1写A=20,T2写A=30。T2的写覆盖了T1的写,T1的修改丢失。这是“丢失修改”问题。62.解析:半连接R⋉63.解析:MongoDB是文档型数据库,存储BSON文档。64.解析:动态转储允许转储期间进行事务处理,需配合日志恢复。65.解析:除法对应“包含所有”或“对于所有”的查询逻辑。66.解析:自然连接会去除重复属性。R(A,B,C),S(B,C,D)。结果为(A,B,C,D),共4个属性。67.解析:物理设计中选择存取路径主要权衡存取时间和维护代价(索引虽快但占空间且更新慢)。68.解析:0..1表示0个或1个,即可选最多一个。69.解析:冲突可串行化定义:调度与一个串行调度冲突等价。70.解析:CREATETABLE定义基本表。71.解析:星型模式中心是事实表,周围是维度表。72.解析:H(16)73.解析:列级约束涉及单个列(如NOTNULL),表级约束涉及多个列(如PRIMARYKEY(A,B))。74.解析:2PL要求读写前先加锁(S或X)。75.解析:层次模型、关系模型、网状模型、面向对象模型属于逻辑数据模型。E-R模型是概念模型。【下午试题参考答案及解析】试题一【问题1】E-R图描述:实体:商品、仓库、供应商、入库记录、出库记录。联系:1.存放:商品与仓库之间是多对多(m:n)联系,属性为库存数量。2.供应:供应商与商品之间是多对多(m:n)联系,属性为供货价格。3.入库:供应商、商品、仓库与入库记录之间是1:n联系(或入库记录作为实体,外键引用其他三个实体)。4.出库:商品、仓库与出库记录之间是1:n联系。(注:文字描述E-R结构)商品(商品编号,商品名称,规格型号,单价)仓库(仓库编号,仓库名称,地址,联系电话)供应商(供应商编号,供应商名称,联系人,联系电话)存放(m:n):商品与仓库,属性:库存数量供应(m:n):供应商与商品,属性:供货价格入库记录:包含对商品、仓库、供应商的引用【问题2】关系模式:1.商品(商品编号,商品名称,规格型号,单价)2.仓库(仓库编号,仓库名称,地址,联系电话)3.供应商(供应商编号,供应商名称,联系人,联系电话)4.存放(商品编号,仓库编号,库存数量)主键:(商品编号,仓库编号)外键:商品编号,仓库编号5.供应(供应商编号,商品编号,供货价格)主键:(供应商编号,商品编号)外键:供应商编号,商品编号6.入库记录(记录编号,入库日期,商品编号,仓库编号,供应商编号,数量,经手人)主键:记录编号外键:商品编号,仓库编号,供应商编号7.出库记录(记录编号,出库日期,商品编号,仓库编号,数量,客户编号,经手人)主键:记录编号外键:商品编号,仓库编号【问题3】不合理。理由:记录编号本身就可以唯一标识一条入库记录,作为单属性主键即可。加入商品编号虽然能保证唯一性,但属于部分函数依赖,主键冗余,且不符合主键应最小化的原则。试题二【问题1】```sqlCREATETABLE图书(图书IDCHAR(10)PRIMARYKEY,书名VARCHAR(50)NOTNULL,作者VARCHAR(20),出版社VARCHAR(30),出版日期DATE,价格DECIMAL(10,2)CHECK(价格>0),库存量INTDEFAULT0);```【问题2】```sqlSELECTR.姓名,B.借出日期FROM读者R,借阅B,图书TWHERER.读者ID=B.读者IDANDB.图书ID=T.图书IDANDT.书名='数据库系统教程'ANDB.状态='0';```【问题3】应建立B-树索引(或普通索引)。```sqlCREATEINDEXIDX_BOOK_NAMEON图书(书名);```【问题4】```sqlSELECTR.读者ID,R.姓名,COUNT(B.借阅ID)AS图书总数FROM读者RLEFTJOIN借阅BONR.读者ID=B.读者IDGROUPBYR.读者ID,R.姓名;```试题三【问题1】发生“丢失修改”问题。A的最终值为900,B的最终值为1100。错误原因:T1和T2同时读取A=1000,分别减50和100,然后写回。T2写回900覆盖了T1写回950的操作,导致T1的修改丢失。正确结果应为A=850,B=1150。【问题2】操作序列如下(注:严格2PL在事务结束前不解锁):时间T1T2t1Lock-S(A)t2Lock-S(A)(等待,因T1未释放A?不,S与S兼容)->成功t3Lock-X(A)(等待,T2持有S锁)t4Lock-X(A)(等待,T1请求X锁,且T2也请求X锁,死锁或等待)...若严格按时间戳顺序执行且避免死锁(假设T2的X申请也等待):1.T1:Read(A)->Lock-S(A)2.T2:Read(A)->Lock-S(A)3.T1:A=A-50->Lock-X(A)(Wait,T2hasS)4.T2:A=A-100

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论