排序
面试题:什么是数据库的逻辑外键?数据库的物理外键和逻辑外键各有什么优缺点?
在数据库中,外键用于建立表与表之间的关联关系。根据实现方式,外键可以分为 物理外键 和 逻辑外键。以下是它们的定义、优缺点以及适用场景。 1. 物理外键 物理外键是通过数据库的 外键约束(F...
面试题:MySQL 的存储引擎有哪些?它们之间有什么区别?
MySQL 支持多种存储引擎,每种存储引擎有不同的特点和适用场景。以下是 MySQL 中常见的存储引擎及其区别: 1. InnoDB 特点: 事务支持:支持 ACID 事务,适合需要高可靠性和事务处理的场景...
面试题:MySQL 中 INNER JOIN、LEFT JOIN 和 RIGHT JOIN 的区别是什么?
在 MySQL 中,INNER JOIN、LEFT JOIN 和 RIGHT JOIN 是用于连接多个表的常见操作,它们的区别主要体现在返回结果集的方式上。 1. INNER JOIN 定义: INNER JOIN 返回两个表中满...
面试题:MySQL 中 DELETE、DROP 和 TRUNCATE 的区别是什么?
在 MySQL 中,DELETE、DROP 和 TRUNCATE 是用于删除数据或表结构的操作,但它们的作用和影响不同。以下是它们的区别: 1. DELETE 作用: 用于删除表中的数据(行),但保留...
面试题:在 MySQL 中存储金额数据,应该使用什么数据类型?
在 MySQL 中存储金额数据时,推荐使用 DECIMAL 数据类型。以下是详细原因和注意事项: 1. 为什么使用 DECIMAL? 精确存储: DECIMAL 是一种精确数值类型,适合存储金额等...
面试题: 如果 MySQL 中没有 MVCC,会有什么影响?
如果 MySQL 中没有 MVCC(多版本并发控制,Multi-Version Concurrency Control),会对数据库的并发性能、一致性、隔离级别支持等方面产生重大影响。以下是具体的影响分析: 1. 并发...
面试题:MySQL 插入一条 SQL 语句,redo log 记录的是什么?
在 MySQL 中,redo log 是 InnoDB 存储引擎用于保证事务持久性(Durability)的关键机制。当执行一条 SQL 插入语句时,redo log 记录的是对数据页的物理修改操作,而不是 SQL 语句本...
面试题:MySQL 的 Doublewrite Buffer 是什么?它有什么作用?
在 MySQL 中,Doublewrite Buffer 是 InnoDB 存储引擎的一个重要特性,主要用于提高数据页写入的可靠性,防止部分写(Partial Write)问题。以下是关于 Doublewrite Buffer 的详细说明: ...
面试题:MySQL 中 varchar 和 char 有什么区别?
在 MySQL 中,VARCHAR 和 CHAR 是两种常用的字符串数据类型,它们在存储方式、性能和适用场景上有显著区别。以下是它们的详细对比: 1. 存储方式 1.1 CHAR 固定长度:...
面试题:什么是数据库的逻辑删除?数据库的物理删除和逻辑删除有什么区别?
在数据库中,删除操作可以分为 物理删除 和 逻辑删除。这两种方式的主要区别在于数据是否真正从数据库中移除,以及它们对业务逻辑和数据恢复的影响。 1. 物理删除 物理删除是指直接从数据库中删...