列数未知的数据库表

时间:2013-11-29 08:47:25

标签: database

这是我一直想知道的事情。因为我正在创建一个我需要这样做的程序,所以当你“碰到”以下情况时我想问你们你做了什么:

让我们说你有一个聊天程序。在这个程序中,人们可以反复发送消息。

现在,您希望在未知数量的人之间存储对话。

现在你可以做的是拥有一个message表,然后为参与对话的每个users添加一行。

现在,如果你有一个小尺寸程序以外的任何东西,这个消息表将迅速扩展到一个非常大的

所以我想我的问题是你在这种情况下做了什么?

1 个答案:

答案 0 :(得分:3)

要创建多收件人邮件,您可以创建一个包含以下内容的邮件表:

  • ID
  • 发件人 - > users.id
  • 文本
  • 时间

和message_recipients表,其中包含:

  • 消息 - > messages.id
  • 收件人 - > users.id
  • is_read

这仍然具有相同(大)的行数,但这些行将在message_recipients表中,每行只有几个字节。