【问题标题】:MYSQL table suggestionsMYSQL 表建议
【发布时间】:2014-02-12 22:35:58
【问题描述】:

我是 MySQL 和 PHP 的新手。我在思考如何完成某事时遇到问题。我正在建立一个基本上具有论坛风格帖子页面的网站。用户将文本输入到 textarea,然后该文本连同时间戳和 $_SESSION['Username'] 一起发布到名为“campaigns”的 MySQL 表中。所以该表目前有 postEntry、postName 和 postDate 行。

在我拥有表单的同一页面上,然后我将活动表的全部内容显示到一个 div 中。所以它可以按降序显示每个帖子。

这对我来说效果很好,但我现在正试图从大局来看,我认为这不是满足我需要的好方法。我基本上需要能够拥有无穷无尽的“活动”,每个活动都有自己的一组帖子。然后让用户能够选择他们想要查看的活动并在 div 中显示该活动的相应帖子。

所以真正的问题是:有没有办法只用一张桌子来做到这一点。还是每个活动都需要在数据库中拥有自己的表?

【问题讨论】:

  • 数据库中的表数是静态的——只需阅读第三范式即可。如果您开始动态创建表格,您将遇到很多麻烦。性能与存储考虑一起成为问题。
  • 这两个选项都不完全正确,但肯定不是后者。见归一化。这是一个棘手的概念,但却是一个至关重要的概念。
  • 我一定会读完的,谢谢!

标签: php mysql


【解决方案1】:

campaign_id 添加到POST 表和中提琴!

编辑:更多信息:

您需要一个用于广告系列的表格,如下所示:

Campaign
-------------
campaign_id
name

那么所有帖子都需要另外一个

post
-------------
post_id
campaign_id
post_time
name

这样,每个帖子都与特定的命名活动相关联。

【讨论】:

  • 表格是广告系列,帖子内容在此表格内。所以我不完全确定你的意思。你能再解释一下吗?
  • 好的,你是说有一个单独的表格用于活动和帖子,然后以某种方式加入它们?我知道 MySQL 有一种 JOIN 方法,但还没有阅读它。
  • 好的,这给了我一些希望。谢谢你的建议!
  • 在 ID 上。我应该将它们设为 INT 类型吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-16
  • 1970-01-01
  • 1970-01-01
  • 2020-04-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多