Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 成员和组表_Mysql_Sql - Fatal编程技术网

Mysql 成员和组表

Mysql 成员和组表,mysql,sql,Mysql,Sql,我正在考虑一种数据库设计,它将有两个表成员和组。每个成员将至少属于一个组,但成员可能有多个组。反映这一点的最佳方法是为组成员身份创建一个ID数组并将其作为外键存储在成员记录中吗 N:M关系通常被建模为数据库中的一个额外表。 因此,您将有一个成员-表、一个组-表和一个成员组-表,您可以在其中存储两个主键 像这样: +----+----------------+ +----+---------------+ +-----+----+----+ |m_id|memb

我正在考虑一种数据库设计,它将有两个表成员和组。每个成员将至少属于一个组,但成员可能有多个组。反映这一点的最佳方法是为组成员身份创建一个ID数组并将其作为外键存储在成员记录中吗

N:M关系通常被建模为数据库中的一个额外表。 因此,您将有一个
成员
-表、一个
-表和一个
成员组
-表,您可以在其中存储两个主键

像这样:

    +----+----------------+      +----+---------------+      +-----+----+----+
    |m_id|member          |      |g_id|group          |      |mg_id|m_id|g_id|
    +----+----------------+      +----+---------------+      +-----+----+----+
    |1   |tom             |      |1   |groupA         |      |1    |1   |1   |
    |2   |tim             |      |2   |groupB         |      |2    |1   |2   |
    |3   |michael         |      +----+---------------+      |3    |2   |1   |
    +----+----------------+                                  +-----+----+----+

您的想法-在
成员中存储多值属性
-表与第一个范式()冲突,后者规定每个属性必须是一个值。

N:M关系通常被建模为数据库中的一个额外表。 因此,您将有一个
成员
-表、一个
-表和一个
成员组
-表,您可以在其中存储两个主键

像这样:

    +----+----------------+      +----+---------------+      +-----+----+----+
    |m_id|member          |      |g_id|group          |      |mg_id|m_id|g_id|
    +----+----------------+      +----+---------------+      +-----+----+----+
    |1   |tom             |      |1   |groupA         |      |1    |1   |1   |
    |2   |tim             |      |2   |groupB         |      |2    |1   |2   |
    |3   |michael         |      +----+---------------+      |3    |2   |1   |
    +----+----------------+                                  +-----+----+----+
您的想法-在
成员中存储多值属性
-表与第一个范式()冲突,后者规定每个属性必须是一个值。

这是一个经典

A是必需的,它将包含两个表中的主键

您需要3个表-成员、组和新的连接表,您可以将其称为成员组。

这是一个经典

A是必需的,它将包含两个表中的主键

您需要3个表-成员、组和新的连接表,您可以称之为成员组