MySQL数据库笔试题及答案.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

MySQL数据库笔试题及答案

一、选择题(每题4分,共20分)

以下哪种MySQL存储引擎支持事务和行级锁?()

A.MyISAMB.InnoDBC.MemoryD.CSV

下列关于索引的描述,错误的是()

A.索引可提高查询效率,但会降低插入/更新效率

B.主键索引默认是唯一索引

C.使用select*fromtablewherenamelike%张三时,name字段的索引会生效

D.联合索引遵循“最左前缀原则”

MySQL中,事务的隔离级别不包括以下哪项?()

A.读未提交(ReadUncommitted)B.读已提交(ReadCommitted)

C.可重复读(RepeatableRead)D.自动提交(AutoCommit)

执行deletefromuserwhereid=10后,若想撤销该操作,应使用()

A.rollbackB.undoC.revertD.无法撤销(未开启事务)

下列SQL语句中,能正确统计“user表中年龄大于25的男性用户数量”的是()

A.selectcount()fromuserwhereage25andgender=男

B.selectsum()fromuserwhereage25andgender=男

C.selectcount(1)fromuserwhereage25orgender=男

D.selectcount(id)fromuserwhereage=25andgender=男

二、简答题(每题10分,共30分)

简述InnoDB和MyISAM的核心区别(至少3点)。

什么是事务的ACID特性?分别解释其含义。

常见的MySQL索引类型有哪些?分别适用于什么场景?

三、SQL实操题(每题15分,共30分)

现有三张表,结构如下:

学生表(student):id(主键,int)、name(姓名,varchar)、age(年龄,int)、class_id(班级ID,int)

班级表(class):id(主键,int)、class_name(班级名称,varchar)

成绩表(score):id(主键,int)、student_id(学生ID,int)、subject(科目,varchar)、score(分数,int)

请写出以下需求的SQL语句:

查询“高一(1)班”所有学生的姓名、年龄及数学科目成绩(若未考数学则显示为NULL)。

统计每个班级的“语文”科目平均分,要求显示班级名称和平均分(保留1位小数),并按平均分降序排列。

四、优化题(10分)

现有SQL语句:select*fromorderwhereuser_id=100andcreate_time=2024-01-01orderbytotal_amountdesc;,order表数据量超100万条,执行效率较低。请分析可能的原因,并给出优化方案。

五、事务与锁题(10分)

在并发场景下,多个线程同时更新“商品表(goods)”中某商品的库存(stock字段),可能出现超卖问题。请写出两种避免超卖的实现方案(需包含核心SQL逻辑)。

答案部分

一、选择题

B(解析:InnoDB是MySQL默认存储引擎,支持事务、行级锁和外键;MyISAM不支持事务,仅支持表级锁)

C(解析:模糊查询中,前缀含%会导致索引失效,因为索引无法匹配“任意字符+张三”的模糊规则)

D(解析:AutoCommit是MySQL事务的提交模式,非隔离级别;InnoDB默认隔离级别是可重复读)

D(解析:delete语句默认自动提交事务,若未手动开启事务(starttransaction),执行后无法撤销)

A(解析:B中gender=男缺少引号,C用or逻辑错误,D中age=25与需求“大于25”不符)

二、简答题

InnoDB与MyISAM核心区别:

事务支持:InnoDB支持ACID事务,MyISAM不支持;

锁粒度:InnoDB支持行级锁和表级锁,MyISAM仅支持表级锁;

外键:InnoDB支持外键约束,MyISAM不支持;

数据存储:InnoDB数据和索引存储在.idb文件,MyISAM分开存储(.MYD数据文件、.MYI索引文件);

崩溃恢复:InnoDB支持崩溃后数据恢复,MyISAM易丢失数据。

事务ACID特性:

文档评论(0)

151****9429 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档