数据库共73篇

面试题:MySQL InnoDB 引擎中的聚簇索引和非聚簇索引有什么区别?

在 MySQL 的 InnoDB 存储引擎中,索引分为聚簇索引(Clustered Index)和非聚簇索引(Secondary Index,也称为二级索引)。它们在存储结构、数据访问方式和性能特点上有显著的区别。 1. 聚...
程序百科的头像-程序百科程序百科38天前
0267

面试题:MySQL 中 INNER JOIN、LEFT JOIN 和 RIGHT JOIN 的区别是什么?

在 MySQL 中,INNER JOIN、LEFT JOIN 和 RIGHT JOIN 是用于连接多个表的常见操作,它们的区别主要体现在返回结果集的方式上。 1. INNER JOIN 定义: INNER JOIN 返回两个表中满...
程序百科的头像-程序百科程序百科39天前
02515

面试题:MySQL 三层 B+ 树能存多少数据?

在 MySQL 中,B+ 树是一种常用的索引结构,通常用于 InnoDB 存储引擎。B+ 树的层数决定了其能存储的数据量。要计算三层 B+ 树能存储多少数据,需考虑以下几个因素: 1. B+ 树的结构 根节点...
程序百科的头像-程序百科程序百科39天前
0255

面试题:什么是数据库的逻辑外键?数据库的物理外键和逻辑外键各有什么优缺点?

在数据库中,外键用于建立表与表之间的关联关系。根据实现方式,外键可以分为 物理外键 和 逻辑外键。以下是它们的定义、优缺点以及适用场景。 1. 物理外键 物理外键是通过数据库的 外键约束(F...
程序百科的头像-程序百科程序百科39天前
02415

面试题:MySQL 中 VARCHAR(100) 和 VARCHAR(10) 的区别是什么?

在 MySQL 中,VARCHAR(100) 和 VARCHAR(10) 都是可变长度的字符串类型,但它们的主要区别在于 最大允许存储的字符数 和 存储空间的占用。以下是它们的详细区别:...
程序百科的头像-程序百科程序百科39天前
02412

面试题:MySQL 在设计表(建表)时需要注意什么?

在设计 MySQL 表时,合理的表结构设计对数据库的性能、可维护性和扩展性至关重要。以下是一些需要注意的关键点: 1. 选择合适的存储引擎 InnoDB: 支持事务、行级锁、外键约束。 适合大多数场景...
程序百科的头像-程序百科程序百科49天前
02414

面试题:什么是数据库的逻辑删除?数据库的物理删除和逻辑删除有什么区别?

在数据库中,删除操作可以分为 物理删除 和 逻辑删除。这两种方式的主要区别在于数据是否真正从数据库中移除,以及它们对业务逻辑和数据恢复的影响。 1. 物理删除 物理删除是指直接从数据库中删...
程序百科的头像-程序百科程序百科39天前
02314

面试题:相比于 Oracle,MySQL 的优势有哪些?

相比于 Oracle,MySQL 在某些场景下具有明显的优势,尤其是在中小型项目、互联网应用和初创公司中。以下是 MySQL 相比于 Oracle 的主要优势: 1. 成本优势 开源免费: MySQL 是开源的,社...
程序百科的头像-程序百科程序百科39天前
02211

面试题:MySQL 中的数据排序是怎么实现的?

在 MySQL 中,数据排序通常发生在以下场景: ORDER BY 子句:对查询结果进行排序。 GROUP BY 子句:对分组结果进行排序。 DISTINCT 子句:对去重结果进行排序。 索引排序:如果查询可以利用...
程序百科的头像-程序百科程序百科38天前
0229

面试题: 如果 MySQL 中没有 MVCC,会有什么影响?

如果 MySQL 中没有 MVCC(多版本并发控制,Multi-Version Concurrency Control),会对数据库的并发性能、一致性、隔离级别支持等方面产生重大影响。以下是具体的影响分析: 1. 并发...
程序百科的头像-程序百科程序百科39天前
02215