mysql怎么加入外码
时间 : 2023-08-03 12:06:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
在 MySQL 中,可以通过使用外键(Foreign Key)来创建外码(Foreign Key)。外键是一种约束,用于关联两个表的数据。外键约束确保了在插入或更新数据时,被引用表中的键值必须存在于引用表中。在 MySQL 中,可以通过以下步骤来添加外键约束。
1. 建立两个表
首先,需要创建两个表,一个是引用表(父表),另一个是被引用表(子表)。在创建表时,需要确保被引用表中的外键字段与引用表中的主键字段数据类型一致。
示例代码:
CREATE TABLE authors (
id INT PRIMARY KEY,
name VARCHAR(50)
);
CREATE TABLE books (
id INT PRIMARY KEY,
title VARCHAR(100),
author_id INT,
FOREIGN KEY (author_id) REFERENCES authors(id)
);
在上面的代码中,authors 表是引用表,books 表是被引用表。books 表中的 author_id 字段是一个外键,它引用了 authors 表的 id 字段。
2. 添加外键约束
在创建被引用表时,可以使用 FOREIGN KEY 约束来指明要引用的外键和引用表的主键字段。在创建外键时,需要指定外键的名字以及引用表的字段。
示例代码:
ALTER TABLE books
ADD CONSTRAINT fk_author
FOREIGN KEY (author_id) REFERENCES authors(id);
在上面的代码中,通过 ALTER TABLE 命令向 books 表添加了名为 fk_author 的外键约束,它将 books 表中的 author_id 字段与 authors 表中的 id 字段关联起来。
3. 测试外键约束
在成功创建外键约束之后,可以通过插入或更新数据来测试约束是否起作用。如果尝试插入一条 books 记录,并且关联的 author_id 值在 authors 表的 id 列中不存在,那么插入操作将会失败。
示例代码:
INSERT INTO books (id, title, author_id)
VALUES (1, 'Harry Potter', 100);
根据上面的代码,如果 authors 表中没有 id 为 100 的记录,插入操作将会失败,因为外键约束确保了 books 表中的 author_id 值必须存在于 authors 表的 id 列中。
可以通过查询 books 表来验证外键约束是否生效。
示例代码:
SELECT * FROM books;
如果外键约束生效,将看不到关联到不存在的作者的记录。
通过以上步骤,可以在 MySQL 中成功添加外码。外码可以提供数据完整性和一致性,确保关联表的数据之间的一致性。
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章