gpt4 book ai didi

mysql - MySQL FK 的正确命名约定是什么?

转载 作者:IT老高 更新时间:2023-10-28 12:51:29 24 4
gpt4 key购买 nike

由于它们必须是唯一的,我应该在 MySQL 数据库中命名 FK 的什么?

最佳答案

在 MySQL 中,不需要为外键约束赋予符号名称。如果没有给出名称,InnoDB 会自动创建一个唯一的名称。

无论如何,这是我使用的约定:

fk_[referencing table name]_[referenced table name]_[referencing field name]

例子:

CREATE TABLE users(
user_id int,
name varchar(100)
);

CREATE TABLE messages(
message_id int,
user_id int
);

ALTER TABLE messages ADD CONSTRAINT fk_messages_users_user_id
FOREIGN KEY (user_id) REFERENCES users(user_id);

我尝试在引用表和被引用表中使用相同的字段名称,如上例中的 user_id 所示。当这不切实际时,我还将引用的字段名称附加到外键名称。

这种命名约定允许我通过查看表定义来“猜测”符号名称,此外它还保证了名称的唯一性。

关于mysql - MySQL FK 的正确命名约定是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2240929/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com