SQL Foreign Key 外键

一张表里的列,引用了另一张表的主键 表跟表的关联,靠的就是它。

CREATE TABLE orders (
  order_id INT PRIMARY KEY,
  user_id INT,  -- 这就是外键,指向 users.user_id
  FOREIGN KEY (user_id) REFERENCES users(user_id)
);

作用

  • 关联 —— 让你能 JOIN 两张表(“查 Alice 下了哪些订单”)
  • 完整性 —— 数据库会拒绝插入指向不存在用户的订单
  • 级联 —— 配合 ON DELETE CASCADE 可以连带删除

跟 PK 的关系

users.user_id (PK)  ←  orders.user_id (FK)

FK 永远指向某张表的 PK。