gpt4 book ai didi

MySQL - 如何创建复合表?

转载 作者:搜寻专家 更新时间:2023-10-30 20:54:20 25 4
gpt4 key购买 nike

我是 MySQL 的新手,我要创建一个数据库来管理有关糖尿病患者的信息。我有 6 个表,这里重要的是 3 个表,diabetic 表、diabetic_profile 表和 medication_profile 表。

最后一个表 (medication_profile) 应该是一个复合表,它将有两个主外键。这些外键是 diabetic_id(diabetic) 和 profile_id (diabetic_profile)。将其转换为 MySQL 代码对我来说是困难的部分。我尝试了很多方法,但仍无法实现。下面是我使用的 sql 命令:

CREATE TABLE Medication_Profile (
medication_type VARCHAR(10) NOT NULL,
profile_id INT NOT NULL,
diabetic int NOT NULL,
times_a_day NUMERIC(1) NOT NULL,
dose VARCHAR(20) NOT NULL,
PRIMARY KEY (medication_type, profile_id, diabetic),
FOREIGN KEY (profile_id, diabetic)
REFERENCES Diabetic_Profile (profile_id, diabetic_id)

);

请注意,此表中的 diabetic_id 已经是 Diabetic_profile 表中存在的外键。

请问您有什么建议吗?

提前致谢

最佳答案

每个外键都需要一个单独的 FOREIGN KEY 子句,因为它们引用不同的表。

FOREIGN KEY (diabetic_id) REFERENCES diabetic (diabetic_id),
FOREIGN KEY (profile_id) REFERENCES diabetic_profile (profile_id)

关于MySQL - 如何创建复合表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29627166/

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