首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建论坛数据库的最佳wаy

构建论坛数据库的最佳wаy
EN

Stack Overflow用户
提问于 2017-02-22 04:31:46
回答 1查看 289关注 0票数 1

我正在练习写一个简单的论坛,就是不能决定表格的结构。目前,我有以下内容:

代码语言:javascript
复制
    id  int(11)     AUTO_INCREMENT      
    title   varchar(56) 
    group_id    int(11)
    group_parent    tinyint(1)
    access_from int(11) 
    alliance_forum  tinyint(1)           
    alliance_id int(11)
    alliance_role_access    int(11)

Group parent是一个0或1列,说明论坛是论坛的父论坛,而group id是指引用同一表格的组论坛记录,其中group parent设置为1。

联盟论坛与群父相同,联盟id相同,访问列用于访问控制。

哪种方式是最好的,也是最好的方式?我应该为联盟论坛,forum_groups和group_forums制作3张不同的桌子,还是保持这种方式?

EN

回答 1

Stack Overflow用户

发布于 2017-02-22 04:50:18

我认为你的想法是正确的,但你现在正把自己逼入绝境。

论坛通常不需要嵌套的线程,而是嵌套的组/主题/类别

我会这样做:

表:组

代码语言:javascript
复制
id  int(11)     AUTO_INCREMENT      
name   varchar(56)
parent    int(11) #If parent is 0 there is no parent. Else it's the ID of the parent group (so you can have nested groups/topics/categories)

表:线程

代码语言:javascript
复制
id  int(11)     AUTO_INCREMENT      
title   varchar(56) 
alliance_id int(11) #again: 0 if not, else ID of your alliance 

表:帖子

代码语言:javascript
复制
id  int(11)     AUTO_INCREMENT      
thread int(11) # id of thread
message varchar(1000)
creator int(11) #user id of creator

你可能还想把时间戳和创建者IP添加到线程和帖子中。

如果需要嵌套帖子(reddit样式),只需将parent int(11)添加到帖子表中即可

不太确定access_from应该是什么

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42377376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档