15

我想在我现有的一个 LAMP 网站上添加一个非常简单的博客功能。它将与用户现有的个人资料相关联,他们将能够简单地为博客中的每篇文章输入标题和正文,提交时会自动设置日期。他们将被允许随时编辑和删除任何博客文章和标题。该博客将从最近到最旧的顺序显示,一个页面可能有 20 个帖子,上面有适当的分页。其他用户可以对每篇文章发表评论,博客所有者可以删除这些评论,但不能预先审核。基本上就是这样。就像我说的,非常简单。

我应该如何为此构建 MySQL 表?

我假设由于会有博客文章和评论,我需要为每个单独的表格,对吗?但是每个表中我需要哪些列,我应该使用哪些数据结构,以及我应该如何将两个表链接在一起(例如任何外键)?

我找不到任何类似这样的教程,我想做的是真正为我的用户提供最简单的博客版本。没有标签,没有审核,没有图像,没有花哨的格式等。只是一个简单的日记类型,纯文本博客,有其他用户的评论。

4

1 回答 1

34

我会说你需要以下表格

Posts
  PostID (identity)
  PostTitle (varchar)
  PostDate (datetime)
  Deleted (int)
  OwnerID (int FK to Users)

PostDetails
  PostDetailID (identity)
  PostID (FK to Posts)
  Sequence (int) -> for long posts you order by this
  PostText (text)

Comments
  CommentID (identity)
  Comment (text)
  CommenterID (int FK to Users)
  CommentDate (datetime)
  Deleted (int)

Users
  UserID (identity)
  UserNAme (varchar)
  UserEmail (varchar)
  CreatedDate (datetime)
  Active (int)

所有日期时间字段默认为当前时间,所有身份字段均为 PK 帖子详细信息中的序列字段,以防您不使用文本类型并使用 varchar,以便您可以将帖子拆分为多条记录。

除此之外,我会查看任何开源博客系统,看看他们做了什么,并减去我不需要的东西。

希望有帮助

于 2012-09-10T15:58:04.570 回答