我正在制作一个新闻网站,但我想让用户从 Facebook 插入状态。用户可以在撰写新闻时将状态放在新闻中的任何位置。我想在插入时显示新闻。
这是新闻内容的示例
“一些用户插入文本状态一些其他文本一些其他状态另一个文本另一个状态”
所以我在想在这种情况下什么是好的数据库设计。状态有用户,谁写的,日期和内容。新闻有标题、描述和日期。
我想出了五张桌子。
表新闻标题
id
NewsTitle
NewsDesc
NewsDate
User
表NewsContent - 只包含 id 和来自消息的状态或文本的消息
id
content
表NewsContentDetails - 包含状态的详细信息
id
ContentUser
ContentDate
表NewsContentDetailsLink - NewsContent和NewsContentDetails的连接表
NewsContentId
NewsContentDetailsId
表NewsHeaderContent - NewsHeader和NewsContent的连接表
NewsHeaderId
NewsContentId
这是一个好的数据库设计还是有更好的方法来做到这一点?我担心在显示新闻时我将不得不在 sql 查询中编写许多 JOIN,这会很慢。
编辑: @hrr 建议的数据库设计
**News:**
身份证 | 标题 | 内容 | 用户 | 日期
**Elements:**
身份证 | 内容 | 用户 | 日期 | 新闻_ID
但是元素中的某些字段将为空,我认为这不是一个好的选择。
提前致谢 :)