论坛数据库设计初步
1. 用户信息表
所要存储的信息包括用户注册信息 用户论坛等级信息 用户所属权限组
Users:
字段 描述
UserID 用户ID
UserName 用户名
UserPwd 密码
UserPassQ 密码提示问题
UserPassA 密码提示问题答案
UserSex 用户性别
UserBirth 出生日期
UserBlog 用户主页
UserPro 来自何地
User_gradeid 用户等级ID
User_mana 用户威望值
User_ex 用户经验值
User_money 用户金币
User_job 用户论坛职务
User_honorid 用户勋章ID
User_show 用户个性签名
User_time 用户注册日期
User_purid 用户权限组ID
2.论坛版面分类表
所要存储的信息包括版面的ID,名称以及版面的公告
Class:
字段 描述
ClassId 版面ID
ClassName 版面名称
ClassMsg 版面公告
3.论坛分版面信息表
所要存储的信息包括分版面名称 父版面ID 分版面说明图片及文字 种类等
Boards:
字段 描述
id 自动编号
BoardName 分版面名称
BoardPId 对应父版面ID
BoardImage 分版面说明图片
BoardInfo 分版面说明文字
BoardSort 分版面种类(如普通版面 认证版面等)
4.论坛主题信息表
Announces:
字段 描述
id 自动编号
topic 主题标题
Body 主题内容
fileid 主题上传附件的ID
Ann_time 主题发表时间
Ann_userid 发帖人ID
Ann_username 发帖人用户名
Ann_boardid 主题所属分版面
Ann_classid 主题所属版面
Ann_sort 主题类别(普通 新帖 精华等)
5.论坛回复信息表
Restores:
字段 描述
RestoreId 回帖ID
RestoreBody 回复内容
RestoreAId 回复帖所属版面
RestoreBId 回复帖所属分版面
RestoreUId 回复人ID
RestoreUname 回复人名称
RestoreTime 回复时间
6.论坛斑竹信息表
Masters:
字段 描述
MasterId 版主ID
MasterName 版主名称
MasterBId 所属分版面
MasterCId 所属版面
MasterFlag 状态 (正常或停职务等)
MasterExplain 说明
MasterTime 任职时间
7 论坛勋章表
Honors:
字段 描述
HonorId 勋章ID
HonorIcon 勋章图标地址
HonorTitle 勋章说明
8.论坛用户等级表
Levels:
字段 描述
id 自动编号
GradeId 等级ID
GradeUrl 勋章图标地址
9.用户控制台功能表
10.附件信息表
11.论坛权限表
12.论坛短消息表
13.论坛日志表
14后台管理功能表
---------------------------------帖子,回复-------------------------------
我做过的论坛用过两种办法,一种是帖子和回帖各用一个表,在回帖表里有个字段来表示是回的哪一个帖子(就是和帖子表里的一个唯一字段关联),另一个办法是帖子和回帖放在一个表里,有一个字段来区分帖子类型(回贴或帖子),然后在另一个表里有两个字段,一个是和帖子表里的回帖本身的主键一样,另一个字段标明这个回复本身所对应的帖子所在帖子表里的字段
对,而且树形论坛显示出来的样子应该和一般的树形列表很相似,比如帖子是顶头显示的,它的回复就是下一行然后缩进两格显示,如果回复了回复就在它的下一行再缩进两格显示,和资源管理器左边的树形目录是一个道理,这样所有的回复都可以显示出来,用户可以选择点击帖子或者回复进行回复,给你看一个例子,这里你可以自己选择用"平板模式"或者"树形模式",上边有两个按钮
---------------------------------3----------------------------------
网站论坛如何制作—简单论坛数据库的设计与操作
如何制作网站论坛?
论坛是网站重要组成部分,很多具有交互性的网站,都少不了论坛,论坛是站长与网友、网友与网友之间交流的平台!
本站收到各位网友来信,关于网站论坛如何制作的信件还真不少,本文就其设计与制作过程作一个概括性的说明!!!有不足之处还请原谅!
首先我们来谈谈论坛数据库的设计,这个尤为重要!
总体上来讲,论坛数据库一般分为三个表,三个表也足够了!
①:保存论坛名称的数据表,如:ForNumName
②:保存每个论坛贴子的数据表,如:ForNumArticle
③:保存各贴子对应的回复贴子的数据表,如:ArticleDetail
这三个表,简单的数据字段分别是:
ForNumName(ID,ForNumName)
ForNumArticle(ID,ForNumListID,Title,Detail,DateTime,Author)
ArticleDetail(ID,ForNumArticleID,Title,Detail,Author)
上述三个表的关系,从①到③,其关联都是级联更新、级联删除的,即,如果在①中删除了论坛名称,那么,对应的②中的贴子也自动删除,同理,在③中对应的②中的回复也自动删除!①表是根,删除了根,自然没了树干和树叶了!
上述的级联更新与删除,靠的是什么呢,靠的就是关键字段,它们之间的关系是一对多的关系!
①中的ID对应与②中的ForNumListID;②中的ForNumListID对应③中的ForNumArticleID
①中的ID是自增关键字段,②中的ID也是自增关键字段,③中的ID还是自增关键字段;
②中的ForNumListID字段类型与①中的ID一致,是靠插入的!
③中的ForNumListID字段类型与①中的ID也一致,是靠插入的!
上述已介绍的这些字段,是INT类型的字段,即整型的字段!
设计好了之后,就可以设置他们之间的关联了!

看上图,就是一个已设置好关系的表间关联图!
有了数据库作为后台的支持,接下来就是对数据库的操作了!
①:论坛栏目的设置
栏目设置包含栏目的增加、修改及删除等操作,下面提供相关的操作语句!
增加:insert into ForNumName(ForNumName) values('栏目一')
修改:Update ForNumName set ForNumName='软件下载' where ID=1
//将ID为1的栏目名称改为软件下载
删除:delete from ForNumName where ID=1 //删除ID为1的栏目!
②:发贴与修改贴子的操作!……
③:回复贴子的操作!……
相关的数据库的操作,一时是讲不完的,有一定基础的网友看了应该会懂!
如果要做比较复杂的论坛,那么可以设计更为复杂的字段及使用较为复杂的程序及多使用些特效就行了!
以上仅是一个简单论坛的实现过程!