两个表及其主键之间的关系

时间:2014-04-15 00:55:43

标签: mysql sql sql-server

如果我这样做,我很困惑

我有像

这样的表格
| account   |       | Acc_registration_Info |
| AccID_PK  |       | AccRegInfo_PK         |
|           |       |                       |
|           |       |                       |

我应该在两个主键之间连接它们吗?还有如何在ID不匹配的情况下保护它们?

我试图遵循Advanture Works数据库结构,但这有点难以理解,一些AW数据库表被分割为地狱(就像用户和他们在不同表中的密码一样)。

对于制作如此多的表并且通过PK一对一地将它们联系起来我真的没有信心......我的另一个艰难的决定是通过PK等连接Shop表和详细商店信息表等。

另一方面,制作太多非主要列以连接其他表格看起来并不令人满意

1 个答案:

答案 0 :(得分:3)

我认为你必须将表的一个主键作为ather的外键,它是如何工作的:

| account         |       | Acc_registration_Info |
| AccID_PK        |       | AccRegInfo_PK         |
| #AccRegInfo_FK  |       |                       |
|                 |       |                       |

就像那样,如果你想知道一个帐户的注册信息,你只需要选择该帐户的#AccRegInfo_FK(在帐户表中)并将其分隔到AccRegInfo_PK(在reg信息表中),你就会得到你所知道的,当然在关系数据库联合中称为