如何在phpmyadmin中创建外键

2022-08-30 10:49:38

我想让doctorid成为我患者表中的外键。

因此,我创建了所有表 - 主要问题是,当我转到表时,>结构>关系视图,只有主键出现,我可以创建一个外键(并且它已经是我要保留的特定表的主键 - 即患者表患者可以更改,但医生ID - 我也有医生表 - 也没有启用)。

我有另一个表,在关系视图中有两个复合键(medicineid和patiricid),它使我能够更改两者

我是否必须将患者表中医生ID的索引设置为其他内容?两者都不能是主键,因为患者 ID 是患者表的主键 - 医生是外国人。

table

我希望任何人都可以提供帮助

亲切问候


答案 1

你可以用老式的方式去做...使用如下所示的 SQL 语句

ALTER TABLE table_1_name
    ADD CONSTRAINT fk_foreign_key_name
    FOREIGN KEY (table_1_column_name)
    REFERENCES target_table(target_table_column_name);

例如:如果表中的列引用表中的列:bookscreated_byidusers

ALTER TABLE books
    ADD CONSTRAINT books_FK_1
    FOREIGN KEY (created_by)
    REFERENCES users(id);

这假设相关表中已存在键


答案 2

必须为该键编制索引才能应用外键约束。为此,请按照以下步骤操作。

  1. 打开表结构。(第 2 个选项卡)
  2. 请参阅最后一列操作,其中有多个操作选项。单击“索引”,这将使列成为索引。
  3. 打开关系视图并添加外键约束。

您现在可以将DOCTOR_ID分配为外国人。


推荐