一到多个mySQL数据库设置

时间:2009-12-10 02:18:01

标签: sql mysql

我无法解决如何设置它的问题。我有两张桌子:

  • 项目

1个项目可以属于很多部分 1节可以有很多项目。

  1. 我如何设置这个,这是多对多关系还是一对多关系?
  2. 如果我创建了一个查找表,那还能最好吗?

3 个答案:

答案 0 :(得分:2)

  

这会是多对多关系还是一对多关系?

它被视为多对多,因为许多项目可以引用许多部分。

您需要实现一个位于projectssections之间的表,使用两者中的外键作为主键。例如:

PROJECTS_SECTIONS_XREF

  • PROJECT_ID,pk,fk
  • SECTION_ID,pk,fk

命名约定取决于您,但我建议使用所涉及的两个表的名称来提供信息。 Corrollary,交叉引用(外部参照),查找等。过去一周左右有关于命名约定的两个问题 - 所有名称都是同义词,选择你喜欢的任何名称。

答案 1 :(得分:1)

这是一个简单的1对多关系。您上面提到的2个要求相同。不需要查找表。在你的section表中你只需要一个fk回到项目表

答案 2 :(得分:0)

创建一个关系表...让我们称之为ProjectSections,其字段为ProjectId和SectionId。通过使用ProjectId和SectionId创建记录,可以在ProjectSections中创建项目和部分之间的关​​系。

ProjectSections然后将项目和章节链接在一起。