mysql建表外键约束怎么写

来源:这里教程网 时间:2026-02-28 18:10:10 作者:

MySQL 外键约束语法

在 MySQL 中,外键约束用于确保两个表之间的关系完整性。其语法如下:

<code>ALTER TABLE child_table
ADD FOREIGN KEY (foreign_key_column)
REFERENCES parent_table (primary_key_column)</code>

其中:

child_table
:需要添加外键约束的表。
foreign_key_column
child_table
中引用
parent_table
主键的列。
parent_table
:被引用的表,其主键用于定义约束。
primary_key_column
parent_table
中被引用的主键列。

外键约束的作用

外键约束有助于确保以下事项:

数据完整性:防止在子表中插入没有在父表中存在的引用。 级联更新:当父表中的主键值更改时,自动更新所有引用子表中的值。 级联删除:当父表中的主键值被删除时,自动删除所有引用子表中的值。

示例

假设我们有两个表:

orders
order_items

<code>CREATE TABLE orders (
  order_id INT NOT NULL AUTO_INCREMENT,
  customer_id INT NOT NULL,
  PRIMARY KEY (order_id)
);
CREATE TABLE order_items (
  item_id INT NOT NULL AUTO_INCREMENT,
  order_id INT NOT NULL,
  product_id INT NOT NULL,
  PRIMARY KEY (item_id),
  FOREIGN KEY (order_id) REFERENCES orders (order_id)
);</code>

在此示例中,

order_items
表的外键约束确保了每个
order_id
值在
orders
表中都存在。这意味着我们无法在
order_items
表中插入没有在
orders
表中存在的
order_id
值。

相关推荐