bbs 数据库设计

简介:
.因为社区要加个bbs论坛,所以就当做练习,自己提前设计了一下数据库,由于经验有限,错误在所难免,还希望各位不吝赐教

数据库的表如上图,


我先把每个表都说明一下,

UserInfo  记录用户的基本信息
       User_Name  用户名(唯一)   int
       User_Pwd  用户密码    nvarchar
       User_nickname  用户昵称   nvarchar
       User_headpicurl  用户头像地址  nvarchar
       User_allmarks  用户论坛的总积分  int
      User_roleid  用户角色  int

BigBoard  论坛的父版块信息
      BiBo_id   父版块的id      int
      BiBo_title 父版块的名称    nvarchar
      BiBo_admin   父版块的斑竹(多个用‘|’隔开)  nvarchar

SmallBoard 论坛的子版块信息
      SmBo_id  子版块的id     int
      SmBo_title  子版块的名称    nvarchar
      SmBo_admin   子版块的斑竹(多个用‘|’隔开)   nvarchar
      SmBo_BiBoid   子版块所属的父版块id    int

Posts  发的帖子信息
      Post_id  帖子的id    int 
      Post_Title 帖子的标题   nvarchar
      Post_BiBoid 帖子所属父版块id    int
      Post_SmBoid 帖子所属子版块id   int
      Post_admin  发帖者姓名   nvarchar
      Post_createtime 发帖时间   datetime
      Post_updatetime      更新时间   datetime
      Post_content 帖子内容   nvarchar
      Post_goodcount 帖子的好评数   int 
      Post_badcount 帖子的坏评数   int 
      Post_reward 帖子的总共悬赏分(吸引浏览)   int 
      Post_score 帖子悬赏分所剩下的分数   int 
      Post_ispay  是否结贴   bit
      Post_islocked  是否帖子被锁定   bit

Reply  回复信息表  
      Reply_admin  回复者姓名     nvarchar
      Reply_postid  回复的帖子id   int 
      Reply_smboid 回复的帖子所属子版块的id    int 
      Reply_biboid 回复的帖子所属父版块的id    int 
      Reply_content 回复帖子的内容   nvarchar
      Reply_createtime 回复的时间   datetime
      Reply_goodcount 回复的好评数  int
      Reply_badcount  回复的坏评数   int 
      Reply_score 回复所得到的积分(系统给的积分除外)  int
      Reply_id 回复id    bigint

PostCommend 帖子推荐类型表(将被推荐的帖子放入插入此表中)
      PoCo_id  被推荐的帖子id   int 
      PoCo_commendtype 推荐类型   int 
      PoCo_commendtime 推荐时间   datetime
      PoCo_commendperson 推荐人姓名(一般为管理员或者版主)  nvarchar
      PoCo_commendreason 推荐理由   nvarchar

DM_PostCommend 推荐类型的代码表
      Comm_type   推荐类型    int
      Comm_summary  不同种推荐的简介   nvarchar

DM_UserRoles  用户角色表
      Role_id 角色id    int
      Role_name 角色名称(管理员,普通用户,版主等)  nvarchar
      Role_permission 角色所具有的权限   nvarchar

DM_Grade   用户级别表
      Grade_id 级别id      int 
       Grade_name 级别的名称(如小学生,初中生,大学生,等)  nvarchar
      Grade_medalurl  级别的勋章图片链接地址  nvarchar

ScoreLimit  每天的分数限制(防止刷分)
      Score_username 得分用户名    nvarchar
      Score_postmark 发帖个数     int 
      Score_replymark 回帖个数     int 
      Score_createtime  一天中的第一次得分时间    datetime
      Score_updatetime 一天中的其他得分时间(判断两次是不是在同一天,如果是,就将一天的发帖数和回帖数加起来,看是否超出规定,如果超出,之后的操作则不予以加分;如果不是同一天,就将createtime update为当天的第一次得分,就将回帖和发帖置零,总之,一人只有一条记录,如果没有则insert,有则update)   datetime


 我 还想将不同的用户根据不同的权限也分离在不同的表里,但是他们不是平级关系,管理员拥有所有权限,岂不是每个表都要有他?
有谁可以帮我把这个分的再清一点,感觉还是有点乱


    知识 共享才有进步, 所以希望大家各抒己见,谈谈自己的观点!

   或者可以传授一点在数据库设计方面的经验,小生谢个先,O(∩_∩)O
分类:  SqlServer
目录
相关文章
|
4月前
|
存储 关系型数据库 MySQL
7:数据库设计思维-MySQL
7:数据库设计思维-MySQL
34 0
|
10天前
|
存储 安全 数据库
数据库设计
数据库设计包括需求分析、数据模型设计、详细设计、创建数据字典、编写数据脚本和测试。关键考虑因素有数据完整性、物理设计优化和安全性。最佳实践建议避免复数表名、空格,加密密码,用整数作ID并优化索引,以及确保安全备份。良好设计能保障应用系统的稳定性和性能。
7 1
|
SQL 关系型数据库 MySQL
MySQL——数据库设计三范式
第二范式:建立在第一范式的基础之上,要求所有非主键字段完全依赖主键, 不要产生部分依赖。
97 0
MySQL——数据库设计三范式
|
前端开发 Java 关系型数据库
SSM实现完整的BBS论坛
SSM实现完整的BBS论坛
108 0
SSM实现完整的BBS论坛
|
存储 关系型数据库 数据库
7_数据库设计
7_数据库设计
146 0
7_数据库设计
|
存储 关系型数据库 MySQL
带你学MySQL系列 | 黄同学带你了解“数据库设计三范式”
带你学MySQL系列 | 黄同学带你了解“数据库设计三范式”
带你学MySQL系列 | 黄同学带你了解“数据库设计三范式”
|
关系型数据库 MySQL 数据库
MySQL数据库——数据库设计三范式
数据库范式就是数据库设计时需要满足的规范,只有满足这些规范才能保证数据库的冗余小、结构明确,这也直接影响着数据库性能的发挥。数据库开发人员需要遵守范式建立出科学规范的数据库结构。
154 0
|
关系型数据库 MySQL 数据库
MySQL面试题 数据库设计三范式
MySQL面试题 数据库设计三范式
148 0
|
存储 SQL 安全
数据库设计中的14个技巧
. 原始单据与实体之间的关系   可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对 应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实 体,或多张原始单证对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计 录入界面大有好处。
117 0
|
前端开发 Java 关系型数据库
JSP+MySQL校园新闻网站(1)–需求分析
本文目录 1. 整体流程 2. 需求分析 3. 技术选型
167 0