📜  添加约束 fk - SQL (1)

📅  最后修改于: 2023-12-03 15:40:46.856000             🧑  作者: Mango

添加外键约束 - SQL

在关系型数据库设计中,外键约束是非常重要的概念。它利用关系表中的相关字段将数据表链接到一起,从而可以更好地管理数据之间的关系。在 SQL 中,添加外键约束非常简单,只需要使用 ALTER TABLE 命令并指定所需的约束即可。

语法

下面是 SQL 添加外键约束的基本语法:

ALTER TABLE child_table_name
ADD CONSTRAINT foreign_key_name
FOREIGN KEY (child_column_name)
REFERENCES parent_table_name (parent_column_name);

其中,

  • child_table_name:需要添加外键约束的表名。
  • foreign_key_name:外键约束的名称,可选。
  • child_column_name:需要添加外键约束的列名。
  • parent_table_name:参照表的表名。
  • parent_column_name:参照表的列名。

注意,要添加外键约束,必须满足以下条件:

  1. 父表(参照表)中的列必须是唯一索引或主键。
  2. 子表(需要添加外键约束的表)中的列必须与父表中的列具有相同的数据类型。
  3. 子表中的列不允许为空或已经拥有了默认值。
示例

下面的示例演示了如何向 orders 表添加外键约束,参照表为 customers 表:

ALTER TABLE orders
ADD CONSTRAINT fk_customer_id
FOREIGN KEY (customer_id)
REFERENCES customers (customer_id);

这个查询语句把 orders 表中名为 customer_id 的列设为外键,并将其与 customers 表中的相应列 customer_id 关联起来。这意味着每个 orders 行都将被分配到一个与 customers 表的行相匹配的客户 ID 值。

总结

总而言之,外键约束是关系型数据库设计中很重要的一环。通过将表链接在一起,外键可以防止错误的数据插入和损坏的引用完整性。在 SQL 中添加外键约束非常简单,只要按照上面的语法进行查询即可。