如何在 mysql 中创建多对多关系

How to create many to many relationship in mysql

我相信标题是 self-explanatory。如何在 MySQL 中创建 table 结构以建立 many-to-many 关系。

我的 table 是:

pr_resignations_request(
    id, userids ,managerid  ,resignations_date  ,reason_type    requested_date, last_status,    date_last_status,   agreed_date exit_details,   exit_checklist, exit_type,  comments,   discussion, withdrawn,  manager_comments
);

pr_exit_checklist(
    checklist_id, category, action item, responsibility, time_completion, status
);

我正在尝试 link 两个 table 以便每个辞职请求都有多个清单项目。此外,清单项目可以在添加和删除时增大和缩小,辞职请求 table 也可以在添加和删除时增大和缩小。仅供参考,我正在使用 codeigniter 框架,我不知道如何实现这一点。

使用两个相关 Table 的外键创建数据透视表 table。
假设您有一个包含列 idname 的产品 table。 还有一个包含列 idname 的购物车 Table。
要在产品和购物车 table 之间创建多对多关系,请创建一个包含列 product_id 的中间 table(外键引用 Productid 列 table) 和 cart_id(外键引用 Cart table 的 id 列)

更新 1:

在您的情况下,中间 table 将包含 pr_resignations_request_id(外键指的是 pr_resignations_request table 的 id 列)和 pr_exit_checklist_id(外键指的是 pr_exit_checklist table 的 checklist_id 列)

更新 2:

CREATE TABLE checklist_resignation (
pr_resignations_request_id <data_type>,
pr_exit_checklist_id <data_type>,
Constraint FOREIGN KEY (pr_resignations_request_id) REFERENCES pr_resignations_request(id),
Constraint FOREIGN KEY (pr_exit_checklist_id) REFERENCES pr_exit_checklist(checklist_id)
);

请将上面sql语句中的<data_type>替换为它们分别引用的列的数据类型。