收藏 分销(赏)

BBS论坛数据库设计.doc

上传人:二*** 文档编号:4575609 上传时间:2024-09-30 格式:DOC 页数:5 大小:102KB 下载积分:5 金币
下载 相关 举报
BBS论坛数据库设计.doc_第1页
第1页 / 共5页
本文档共5页,全文阅读请下载到手机保存,查看更方便
资源描述
BBS论坛数据库设计 一、需求分析 BBS论坛是一个WEB系统,可以为大家提供一个交流、互动的平台。经过分析,BBS论坛需要实现以下功能: (1)用户注册和登录,后台数据库需要存放用户的注册信息和在线状态信息; (2)用户发贴,后台数据库需要存放贴子相关信息,如贴子内容、标题等; (3)浏览、查找帖子,数据库需要实现查看和查找的功能。 (4)论坛版块管理,后台数据库需要存放各个版块信息,如版主、版块名称、贴子数等。 二、系统设计 根据BBS论坛的功能,设计的基本实体有BBSUser(用户)、BBSTopic(主贴)、BBSReply(回贴)、BBSSection(版块)、。 1、每个实体具有的属性 (1)用户:用户昵称,密码,电子邮件,生日,性别,用户头像,用户等级,用户备注,注册日期,用户状态,用户积分,是否版主。 (2)主贴:所属版块,发贴人,发贴表情,回复数量,标题,正文,发贴时间,点击数,状态,最后回复的用户,最后回复时间。 (3)回贴:回复主贴ID,所在版块ID,回贴人ID,回贴表情,回复内容,回贴时间。 (4)版块:版块ID,版块名称,版主,版块主题,本版格言,点击率,发贴数。 2、各对象间的关系 (1)跟贴和主贴有主从关系:我们需要在跟贴对象中表明它是谁的跟贴。 (2)版块和用户有关系:从用户对象中可以根据版块对象查出对应的版主用户的情况。 (3)主贴和版块有主从关系:需要表明发贴是属于哪个版块的。 (4)跟贴和版块有主从关系:需要表明跟贴是属于哪个版块的。 3、E-R图 BBSUsers UID Uname UEmail UBirtheday Usex UStatement Uclass URegDate UPoint UState 论坛用户 (BBSUser) 发表 回帖 (BBSReply) 板块 (BBSSection) 主帖 (BBSTopic) 属于 管理 属于 发表 属于 4、将E-R图转换为表 (1)将各实体转换为对应的表,将各属性转换为各表对应的列。 (2)标识每个表的主键列。 (3)在表之间建立主外键,体现实体之间的映射关系。 BBSUser(用户)表 字段名 中文名 类型 能否为空 备注 UID 用户ID int 否 主键、自定增长 Uname 用户昵称 varchar 否 唯一值 UPassword 密码 varchar 否 UEmail 电子邮件 varchar 否 UBirthady 生日 varchar USex 性别 int 否 UHead 用户头像 varchar USatement 用户备注 varchar URegDate 注册日期 datetime 否 UState 用户状态 int UPoint 用户积分 int UIsSectioner 是否版主 int 设定默认值,默认不是版主 BBSSession(版块表) 字段名 中文名 类型 能否为空 备注 SID 版块ID int 否 主键,自定增长 SName 版块名称 varchar 否 唯一值 SMasterID 版主ID int 否 外键(引用用户表的UID) SProfile 版块主题 varchar SStatement 本版留言 varchar STopicCount 发贴数 int SClickCoount 点击率 int BBSTopic(主贴表) 字段名 中文名 类型 能否为空 备注 TID 发贴表ID int 否 主键自定增长 TSID 所在版块 int 否 外键(引用版块表的SID) TUID 发贴人 int 否 外键(引用用户表的UID) TReplyCount 回复数 int TEmotion 发贴表情 varchar TTopic 标题 varchar 否 TContents 正文 varchar 否 TTime 发贴时间 datetime 否 TClickCoount 点击率 int TFlag 状态 int TLastReplyUseID 最后回复用户ID 外键(引用用户表的UID) TLastReplayTime 最后回复时间 datetime BBSReply(跟贴表) 字段名 中文名 类型 能否为空 备注 RID 跟贴表ID int 否 自定增长 RTID 回复主贴ID int 否 外键(引用发贴表的TID) RSID 所在版块ID int 否 外键(引用版块表的SID) RUID 发贴人ID varchar 否 外键(引用用户表的UID) TEmotion 发贴表情 varchar RContent 回贴内容 varchar 否 RTime 回贴时间 datetime 否 三、数据库实施 1、创建表 (1)BBSUser(用户)表 CREATE TABLE BBSUser(  UID INT NOT NULL  PRIMARY KEY,  UName VARCHAR(10)  NOT NULL UNIQUE,  UPassword  VARCHAR(20)  NOT NULL,  UEmail VARCHAR(20) NOT NULL, UBirthday VARCHAR(20), USex INT NOT NULL , UHead VARCHAR(20) , UStatement VARCHAR(20) , URegDate DATEMENT NOT NULL, UState INT , UPoint INT, UIsSectioner INT  ) (2)BBSSession(版块表) CREATE TABLE BBSSession( SID INT NOT NULL PRIMARY KEY,   SName  VARCHAR(10)  NOT NULL UNIQUE,  SMasterID INT NOT NULL, SProfile  VARCHAR(10) , SStatement  VARCHAR(10) , STopicCount  INT , SClickCoount  INT , FOREIGN KEY SMasterID REFRENCES BBSUser(UID) ) (3)BBSTopic(主贴表) CREATE TABLE BBSTopic (  TID INT NOT NULL  PRIMARY KEY,  TSID INT NOT NULL , TUID INT NOT NULL , TReplyCount INT, TEmotion VARCHAR(10), TTopic VARCHAR(10) NOT NULL, TContents VARCHAR(10) NOT NULL, TTime DATETIME NOT NULL, TClickCoount INT, TFlag INT , TLastReplyUseID , TLastReplayTime DATETIME, FOREIGN KEY TSID REFRENCES BBSSession (SID) FOREIGN KEY TUID REFRENCES BBSUser(UID) FOREIGN KEY TLastReplyUseID REFRENCES BBSUser(UID)  ) (4)BBSReply(跟贴表) CREATE TABLE BBSReply (  RID INT NOT NULL  ,  RTID INT NOT NULL , RSID INT NOT NULL , RUID VARCHAR(10) NOT NULL, TEmotion VARCHAR(10), RContent VARCHAR(10) NOT NULL, Rtime DATETIME NOT NULL, FOREIGN KEY RTID REFRENCES BBSTopic(TID) FOREIGN KEY RSID REFRENCES BBSSession (SID) FOREIGN KEY RUID REFRENCES BBSUser(UID)  )
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 数据库/数据算法

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服