0

我正在像网站这样的社交平台上工作。我不确定这种情况的表结构应该是什么;

我将有用户将创建的旅行。用户可以将用户添加到他们的旅行中。

所以;

>One Trip
  >Many users

我应该只用两列创建吗?

>tripID
>userID

并为同一行程的每个新用户添加新行?

或者你有其他意见吗?

感谢您的任何建议。

4

2 回答 2

2

您在这里有几种不同的关系:

  • 旅行有创造者
  • 一次旅行有很多用户去旅行
  • 用户进行了多次旅行

这意味着一对多的行程与用户创建行程(用户可以创建许多行程,行程有一个创建者)。

你也有一个多对多,因为一个用户可以去很多次旅行,旅行可以有很多用户,所以你需要一个连接表。

我将连接表命名为 trip_users,因为这是按字母顺序排列的两个连接实体,这在某些地方是一个标准:

旅行

  • ID
  • creator_id(指创建行程的用户)

用户

  • ID

trip_users

  • 用户身份
  • trip_id
于 2012-05-19T20:35:05.997 回答
1

这里有三个不同的对象。一个用户可以进行多次旅行 一次旅行可以有很多用户。根据定义,这是一个多对多的关系。对于大多数 RDBMS,它需要通过关联表来解决。(这是第三个对象)

表:用户

  • 用户身份
  • 用户信息...

表:旅行

  • 行程ID
  • 行程信息...

表:用户行程

  • 用户身份
  • 行程ID
  • 用户旅行信息...
于 2012-05-19T20:32:22.490 回答