论坛管理系统数据库设计

news/2024/10/28 18:27:12/

论坛管理系统数据库设计

  • 数据库
  • 数据表
  • 设计索引
  • 设计视图
  • 设计触发器

数据库

数据库与数据表

create database bbs;
use bbs;

数据表

user

create table user(
uID INT PRIMARY KEY UNIQUE NOT NULL,
userName VARCHAR(20)  NOT NULL,
userPassword VARCHAR(20)  NOT NULL,
userEmail VARCHAR(10)  NOT NULL,
userBirthday DATE  NOT NULL,
userSex BIT  NOT NULL,
userClass INT  NOT NULL,
userStatement VARCHAR(150)  NOT NULL,
userRegDate TIMESTAMP  NOT NULL,
userPoint INT  NOT NULL
);

admin

create table admin(
adminID INT PRIMARY KEY UNIQUE NOT NULL,
adminName VARCHAR(20)  NOT NULL,
adminPassword VARCHAR(20)  NOT NULL
);

section

create table section(
sID INT PRIMARY KEY UNIQUE NOT NULL,
sName VARCHAR(20)  NOT NULL,
sMasterID INT  NOT NULL,
sStatement VARCHAR(150)  NOT NULL,
sClickCount INT  NOT NULL,
sTopicCount INT  NOT NULL
);

topic

create table topic(
tID INT PRIMARY KEY UNIQUE NOT NULL,
sID INT  NOT NULL,
uID INT  NOT NULL,
tReplyCount INT  NOT NULL,
tEmotion VARCHAR(20)  NOT NULL,
tTopic VARCHAR(20)  NOT NULL,
tContents TEXT  NOT NULL,
tTime TIMESTAMP  NOT NULL,
tClickCount INT  NOT NULL,
tLastClickT TIMESTAMP  NOT NULL
);

reply

create table reply(
rID INT PRIMARY KEY UNIQUE NOT NULL,
tID INT  NOT NULL,
uID INT  NOT NULL,
rEmotion VARCHAR(20)  NOT NULL,
rToptic VARCHAR(20)  NOT NULL,
rContents TEXT  NOT NULL,
rTime TIMESTAMP  NOT NULL,
rClickCount INT  NOT NULL
);

注:
MySQL不允许在BLOB/TEXT,TINYBLOB, MEDIUMBLOB, LONGBLOB, TINYTEXT, MEDIUMTEXT, LONGTEXT,VARCHAR建索引,因为前面那些列类型都是可变长的,MySQL无法保证列的唯一性,只能在BLOB/TEXT前n个字节上建索引

设计索引

索引

create index index_topic_topic on topic(tTopic);
create index index_topic_time on topic(tTime);
create index index_topic_contents on topic(tContents);
alter table topic add index index_topic_contents (tContents);
create index index_section_name on section(sName);
create index index_reply_time on reply(rTime);
create index index_reply_topic on reply(rTopic);
create index index_reply_id on reply(rID);

设计视图

#展示版块及版块下面的主贴			
create view topic_view			
as select s.sID,s.sName,t.tTopic,t.tContents,t.tTime			
from section s,topic t			
where s.sID=t.sID;	

设计触发器

#新增版块后,更新主题数			
delimiter &&			
create trigger section_count after insert			
on section for each row			
begin			update section set sTopicCount = sTopicCount+1 where sID=new.sID;			
end			
&&			
delimiter ;			#user表中的uID更新,同时更新reply中的uID			
delimiter &&			
create trigger update_uID after update			
on user for each row			
begin			update reply set uID=new.userID;			
end			
&&			
delimiter ;			

http://www.ppmy.cn/news/565708.html

相关文章

学生论坛管理系统的设计与实现

学生论坛管理系统的设计与实现 一、问题定义二、可行性分析三、开发计划书四、系统设计五、系统完成后截图六、源码地址: 一、问题定义 1.项目背景 随着网络的不断发展,网上论坛信息越来越多,发帖的人也越来越多,自然而然&#x…

基于MYSQL的论坛管理系统数据库设计项目实战

说明:这是一个数据库课程设计实战项目(附带代码文档视频讲解),如需代码文档视频讲解可以直接到文章最后获取。 项目背景 随着互联网行业的发展,各种论坛纷纷而来。在论坛系统中,可让用户注册成为论坛会员&a…

怎样卸载deepin系统_系统卸载

因为以下原因,您没有权限编辑本页: 您所请求的操作仅限于该用户组的用户使用:用户 您可以查看与复制此页面的源代码。 [[en:How to uninstall deepin]] 本页面简单介绍如何卸载深度操作系统,如果您对我们有任何建议,请前往[深度论坛](bbs.deepin.org)进行反馈。 如果本页面…

Java实现校园论坛系统

学习Java实现校园论坛系统,本文实现该系统的功能截图,和数据库设计SQL语句供大家参考 1.校园论坛系统背景 随着现在科技的发展,论坛系统越来越多,本系统为模仿校园论坛系统所作。 2.校园论坛系统技术架构 主要技术 Java Servlet JSP、JST…

Java实现论坛系统

学习Java实现论坛系统,本文实现该系统的功能截图,和数据库设计SQL语句供大家参考 1.论坛管理系统背景 随着现在科技的发展,论坛系统越来越多,本系统仿照CSDN做一个java学习论坛系统。 2.后台管理功能 后台功能简单介绍和功能展…

宠物医院管理系统

摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,宠物医院管理系统当然也不能排除在外。宠物医院管理系统是以实际运用为开发背景,运用软件工程开发方法&…

基于PHP的简单BBS论坛系统

前言 项目可包部署 Q 1115487855 交流群:758350964(已满) 交流群2:511496356 一 项目介绍 基于PHP的简单BBS论坛系统 系统分为普通用户和管理员 帖子可以展示访问数量和评论数 技术栈 phpmysql 可搭建在phpstudy下快速部署 二 主要功能 用户 1 注册…

BBS论坛系统的需求

小组成员:psy、zjt、xjw、kj BBS论坛系统的需求 1.不是所有人都可以发表帖子和回复帖子的,必须是以会员的身份登录到系统后,才能够发表、回复帖子。因此BBS论坛将用户划分为3类人:普通游客(非会员)、普通会员和管理人员。2.用户可以注册登录BBS论坛系统&…