还剩5页未读,继续阅读
文本内容:
数据库面试题及答案
一、单项选择题(共30题,每题1分)
1.数据库类型与基本概念以下不属于关系型数据库的是()A.MySQL B.Oracle C.MongoDB D.SQL Server数据库系统的核心是()A.数据库管理系统(DBMS)B.数据库应用程序C.数据库D.数据模型在数据库系统中,DBMS提供的DML语言是用于()A.定义数据库结构B.操纵数据库数据C.检查数据库安全性D.备份数据库
2.SQL语法基础以下SQL语句中,用于查询数据的是()A.CREATE B.INSERT C.SELECT D.DELETE执行SELECT*FROM table_name WHEREid10AND age30;时,条件满足的记录需满足()A.id大于10或年龄小于30B.id大于10且年龄小于30C.id大于10或年龄小于30(取反)D.无条件限制若需查询表中不重复的记录,应使用的关键字是()A.UNIQUE B.DISTINCT C.NO DUPLICATED.SINGLE
3.索引索引的主要作用是()A.提高数据插入速度B.提高数据查询速度C.降低数据存储占用D.保证数据唯一性以下关于索引的说法,错误的是()第1页共7页A.索引可以加快查询效率B.索引会增加数据插入的开销C.主键默认会自动创建索引D.所有字段都适合创建索引InnoDB存储引擎中,默认的索引类型是()A.哈希索引B.B+树索引C.全文索引D.R树索引
4.事务数据库事务的ACID特性中,“原子性”指的是()A.事务中的操作要么全部执行,要么全部不执行B.事务执行过程中,多个事务的操作互不干扰C.事务执行的结果必须是一致的状态D.事务对数据库的修改是永久性的以下不属于数据库事务隔离级别的是()A.Read UncommittedB.Read CommittedC.Repeatable ReadD.Serializable
5.存储引擎MySQL中,支持外键、事务和行级锁的存储引擎是()A.MyISAM B.InnoDB C.Memory D.ArchiveMyISAM与InnoDB的主要区别是()A.MyISAM支持事务,InnoDB不支持B.InnoDB支持行级锁,MyISAM支持表级锁C.MyISAM支持外键,InnoDB不支持D.InnoDB不支持索引,MyISAM支持索引
6.并发控制当多个事务读取同一数据时,若不做处理可能导致“脏读”,这违反了事务的()A.原子性B.一致性C.隔离性D.持久性第2页共7页以下锁机制中,在InnoDB中默认使用的是()A.表锁B.行锁C.页锁D.意向锁
7.性能优化以下哪种情况可能导致SQL查询效率低?()A.对过滤字段创建索引B.使用SELECT*查询所有字段C.合理使用JOIN连接表D.避免在WHERE子句中对字段进行函数操作若需优化慢查询,第一步应执行的操作是()A.直接修改SQL语句B.执行EXPLAIN分析查询计划C.增加服务器硬件配置D.对表进行分表
8.其他核心知识点在数据库中,“主键”的作用是()A.允许字段值重复B.唯一标识表中的记录C.加快表的删除速度D.自动生成表的索引以下关于JOIN的说法,错误的是()A.INNER JOIN只返回两表匹配的记录B.LEFT JOIN返回左表所有记录及右表匹配记录C.RIGHT JOIN返回右表所有记录及左表匹配记录D.FULL JOIN在MySQL中可直接使用
二、多项选择题(共20题,每题2分)
1.数据库基础以下属于数据库系统组成部分的有()A.数据库B.DBMS C.数据库管理员(DBA)D.应用程序关系型数据库的基本术语包括()第3页共7页A.表(Table)B.行(Row)C.列(Column)D.主键(Primary Key)
2.SQL语法以下属于DML语句的有()A.INSERT B.UPDATE C.DELETE D.CREATE执行SELECT name,AVGscore FROMstudents GROUP BY nameHAVINGAVGscore80;时,可能用到的子句有()A.GROUPBYB.WHERE C.HAVING D.ORDER BY
3.索引以下可以创建索引的字段类型有()A.INT B.VARCHAR C.TEXT D.DATE关于复合索引(多列索引),以下说法正确的有()A.复合索引的顺序会影响查询效率B.复合索引可匹配查询条件中的最左前缀C.复合索引只能用于单字段查询D.复合索引可减少单独创建多个索引的空间占用
4.事务与隔离级别数据库事务的隔离级别中,可能出现“不可重复读”的有()A.Read UncommittedB.Read CommittedC.Repeatable ReadD.Serializable以下属于事务隔离级别可能导致的问题有()A.脏读B.不可重复读C.幻读D.重复写
5.存储引擎与锁以下关于MySQL存储引擎的说法,正确的有()A.InnoDB支持外键B.MyISAM不支持事务第4页共7页C.Memory存储引擎数据存放在内存D.Archive存储引擎适合高写入低查询场景以下关于锁的说法,正确的有()A.行锁比表锁更细粒度,并发性能更好B.意向锁是InnoDB自动加的,用于表级锁和行级锁的协调C.死锁是两个事务互相等待对方释放锁导致的D.InnoDB通过超时机制自动解决死锁
6.并发与性能提高数据库并发性能的方法有()A.读写分离B.分库分表C.增加服务器CPU核心数D.使用连接池
三、判断题(共20题,每题1分)数据库中的“视图”是一个实际存储数据的表()TRUNCATE语句与DELETE语句都可以删除表中所有数据,且都支持回滚()索引可以提高查询效率,但会降低插入、更新、删除的效率()InnoDB存储引擎中,一个表只能有一个主键()事务的“一致性”指的是事务执行前后,数据库状态从一个一致状态转换到另一个一致状态()MySQL中,AUTO_INCREMENT关键字可以用于非主键字段()LEFT JOIN和RIGHT JOIN的结果集行数一定相同()存储过程是一组预编译的SQL语句集合,可提高执行效率()数据库分表的主要目的是减少单表数据量,提高查询性能()哈希索引在等值查询时效率高,但不支持范围查询()
四、简答题(共2题,每题5分)第5页共7页简述B+树索引与哈希索引的区别及适用场景什么是数据库事务的隔离级别?请简述MySQL默认的Repeatable Read(可重复读)隔离级别如何避免幻读附标准答案
一、单项选择题C
2.A
3.B
4.C
5.B
6.B
7.B
8.D
9.B
10.A(无错误选项,题目可能有误,正确隔离级别包括A/B/C/D,此处原题目可能为“不属于”,但选项均属于,可能题目有误,按原题选项应为无答案,此处按常见考法调整为“无正确答案”,但根据实际,正确应为无选项正确,可能题目设置问题,此处暂按原选项无正确答案处理)B
13.B
14.C
15.B
16.B
17.B
18.B
19.D
20.(题目为多选,此处单选题目1-20,20题原选项A/B/C/D均正确,即ABCD均对,可能题目有误,按实际应为ABCD)
二、多项选择题(因题目未明确1-20题,此处调整为对应前面题目,假设20-40题)ABCD
21.ABCD
22.ABC
23.AC
24.ABD
25.ABD
26.BC
27.ABC
28.ABCD
29.ABC
30.ABD
三、判断题×
32.×
33.√
34.√
35.√
36.√
37.×
38.√
39.√
40.√
四、简答题B+树索引与哈希索引区别及适用场景第6页共7页B+树索引基于B+树结构,支持范围查询、排序,适合大量范围查询场景;索引树有序,查询效率稳定(最坏Olog n);对IO敏感,适合磁盘存储哈希索引基于哈希表,仅支持等值查询(=、IN),不支持范围查询;查询效率高(平均O1),但不支持排序;内存中效率高,不适合磁盘存储适用场景B+树索引适用于范围查询、排序、多字段查询(复合索引);哈希索引适用于等值查询(如主键查询)场景事务隔离级别与Repeatable Read避免幻读事务隔离级别定义事务并发执行时的相互隔离程度,包括ReadUncommitted(读未提交)、Read Committed(读已提交)、Repeatable Read(可重复读)、Serializable(串行化)MySQL默认Repeatable Read通过MVCC(多版本并发控制)避免幻读InnoDB为每行数据保存两个隐藏字段(DB_TRX_ID、DB_ROLL_PTR),Read View机制中,同一事务内多次查询时,若其他事务插入新记录,新记录的DB_TRX_ID大于当前事务的Read View的低水位,不会被当前事务看到,从而避免幻读说明答案中部分题目(如11题、20题)因原题目选项设置可能存在歧义,实际面试中需以具体情境为准,本答案基于数据库核心原理和MySQL官方文档整理,供参考第7页共7页。
个人认证
优秀文档
获得点赞 0