1.课程设计的目的
现如今网络盛行,BBS论坛也成为人们生活中的信息渠道。BBS是电子公告板系统(Bulletin Board System)之英文缩写,它通过在计算机上运行服务软件,允许用户使用终端程序通过电话调制解调器拨号或者Internet来进行连接,执行下载数据或程序、上传数据、阅读新闻、与其它用户交换消息等功能。
利用SQL Server 2000作为设计工具,理解并应用课程中关于数据库设计的相关理论,能按照设计流程完成完整的数据库设计,包括需求分析、概念设计、逻辑设计、物理设计和实施。
给某BBS论坛模拟开发一套BBS论坛系统,实现如下具体功能:
1.用户注册和登录,后台数据库需要存放用户的注册信息和在线状态信息。
2.用户发帖,后台数据库需要存放贴子相关信息,如贴子内容、标题等。
3.论坛版块管理,后台数据库需要存放各个版块信息,如版主、版块名称和贴子数等。
通过完成BBS系统掌握数据库应用设计的方法及分析、解决实际问题的能力。
2.设计方案论证
(一)设计思路
需求分析是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。可以说,“需求分析”就是确定要计算机“做什么”。
这个设计是完成模拟BBS论坛使用过程中和用户的交互过程。
主要实现如下功能:
(1) 修改密码。
(2) 系统信息。
(3) 提高用户的积分。
(4) 显示精华贴的信息以及回贴详细信息。
(5) 实现论坛的年度评估。
(二)概念结构设计
现实世界中的事物及其活动被人们抽象为数据,人们为了更好地利用和处理数据,
又必须把针对某一方面应用的相关数据按照一定的数据结构形式组织起来。这种数据结
构形式只考虑数据本身的结构以及相互的自然联系,是人们对现实世界的认识和抽象,不考虑在计算机上的具体实现,也可以说与计算机的具体实现无关,所以被人们称之为概念数据模型。
BBS论坛系统数据库E—R模型图如下图1:
图1 论坛系统E-R图
由上一步概念设计得到四个基本表:论坛用户表、主贴表、跟贴表和版块表。从而得出关系模式:
论坛用户表(用户编号,拥护昵称,密码,电子邮件,生日,性别,用户等级,用户备注,注册日期,用户状态,用户积分)
主帖表(贴子编号,所在版块编号,发贴人编号,回复数量,发贴表情,标题,正文,发贴时间,点击数,状态,最后回复时间)
跟帖表(贴子编号,回复的主贴编号,所在版块编号,回贴人编号,回贴表情,正文,回贴时间,点击数)
版块表(版块编号,版块名称,版主的用户编号,版面简介,点击率,发贴数)
(一)物理结构设计
先启动服务管理器如图2
打开查询分析器建立数据库bbsDB。
创建数据库是检测是否存在bbsDB,如果存在,则先删除再创建。
exec xp_cmdshell 'mkdir E:\ys'
use master
go
if exists(select * from sysdatabases where name='bbsDB')
drop database bbsDB
go
create database bbsDB
on primary
(
name='bbsDB_data',
filename='E:\ys\bbsDB_mdf',
size=10mb,
filegrowth=20%
)
log on
(
name='bbsDB_log',
filename='E:\ys\bbsDB_ldf',
size=3mb,
maxsize=20mb,
filegrowth=10%
)109