SQL面试题更新 2026-08-05

请解释SQL中主键与外键的概念,并阐述它们在数据库设计中的功能。

技术原理SQL

考察说明

考查对SQL中主键和外键基本概念及其在数据库完整性中作用的理解。

回答思路

  1. 【回答框架 1】主键是表中唯一标识每行记录的字段或字段组合,其值必须唯一且非空。它确保表的实体完整性,通常用于快速定位和唯一标识记录。
  2. 【回答框架 2】外键是表中的一个字段或字段组合,其值必须匹配另一表的主键(或被引用表的唯一键)。它用于建立和强制表之间的关联,维护引用完整性,防止无效数据插入。
  3. 【回答框架 3】主键与外键共同作用:主键保证行唯一,外键保证关联数据的有效性。它们支持关系型数据库的规范化设计,减少数据冗余,并确保数据一致性。
  4. 【回答框架 4】在实践中有特殊考量,如外键约束可能影响性能,有时通过应用层逻辑或索引优化来平衡,但概念上外键是关系完整性的关键。
  5. 【关键点 1】主键必须唯一且非空,外键必须引用存在的被引用键值。
  6. 【关键点 2】主键确保实体完整性,外键确保引用完整性。
  7. 【关键点 3】外键可以允许NULL,表示可选关联。
  8. 【关键点 4】主键通常自动创建索引,外键也可创建索引以提高性能。
  9. 【易错点 1】误以为外键必须对应主键,实际上可对应任何唯一约束。
  10. 【易错点 2】忽略外键对性能的影响,在大型表中未建索引导致查询慢。
  11. 【易错点 3】混淆主键唯一性与NOT NULL约束,主键隐含NOT NULL。