gpt4 book ai didi

mysql - 中间表设计

转载 作者:行者123 更新时间:2023-11-29 08:03:34 26 4
gpt4 key购买 nike

我很难理解中间表的工作原理。

这是我的预期设计:我有一个“用户”表。每个用户都有他正在学习的类(class)“course_id”。类(class)名称位于“courses”表中,中间表为“users_courses”。

users:  
user_id (pk)

users_courses:
user_id (pk)
course_id

courses:
course_id (pk)
course_name

这是正确的方法吗?这对我来说没有意义,因为在同一用户学习多门类(class)的情况下,我无法为他输入多个值,因为它将创建重复的键。我该如何让它发挥作用?

最佳答案

要仅允许用户和类(class)的一种组合,但允许用户参与多个类(class),您必须将 user_idcourse_id 放入单个唯一键中。

create table users_courses
(
user_id int,
course_id int,
unique index u_idx (user_id, course_id)
)

关于mysql - 中间表设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23164786/

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