gpt4 book ai didi

mysql - 除了使用主键-外键关系之外,如何链接 MySQL 数据库中的多个表?

转载 作者:搜寻专家 更新时间:2023-10-30 23:38:06 27 4
gpt4 key购买 nike

我在数据库中有名为“studentdetails”、“class”、“obtainedmarks”和“subject”的表。我在表“studentdetails”中有一个名为“STUDENTID”的主键,它作为外键连接到其他表。

我想在同一张表 'studentdetails' 中再创建一个主键,它包含三列 ('STUDENTID','CLASS','ROLLNO') 以便我可以使用与 'obtainedmarks' 的三列的外键关系' 表。

一张表只能有一个主键,如何建立这样的关系?

最佳答案

Mysql当然允许外键关系跨越多列。事实上,manual 中甚至有一个完整的示例。 .因此,您的关系可能看起来像

 CONSTRAINT fk_multi FOREIGN KEY (`studentid`, `class`,`subject`)
REFERENCES other_table (`studentid`, `class`,`subject`)
ON DELETE CASCADE ON UPDATE CASCADE,

但是请注意,进入 REFERENCES 部分的是列的名称,而不是其他表上的索引名称。

进入主键问题,确实每个表只能有一个主键。但是没有什么可以阻止您在引用的三个列上创建复合唯一键。

关于mysql - 除了使用主键-外键关系之外,如何链接 MySQL 数据库中的多个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38866704/

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