学习指引
随着论坛的出现,人们的交流有了新的变化。在论坛里,人们之间的交流打破了空间、时间的限制。在论坛系统中,用户可以注册成为论坛会员,取得发表言论的资格,也需要论坛信息管理工作系统化、规范化、自动化,通过这样的系统可以做到信息的规范管理、科学统计和快速地发表言论。为了实现论坛系统规范和运行稳健,需要数据库的设计非常合理。本章主要讲述论坛管理系统数据库的设计方法。
重点内容
- 了解论坛系统的功能。
- 熟悉论坛系统的功能模块。
- 掌握如何设计论坛系统的表的E-R图。
- 掌握如何设计论坛系统的表。
- 掌握如何设计论坛系统的索引。
- 掌握如何设计论坛系统的视图。
- 掌握如何设计论坛系统的触发器。
20.1 系统功能描述
论坛又名BBS,全称为Bulletin BoardSystem(电子公告板)或者BulletinBoard Service(公告板服务)。它是Internet上的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。
论坛是一种交互性强、内容丰富且及时的电子信息服务系统。用户在BBS站点上可以获得各种信息服务、发布信息、进行讨论、聊天等。和日常生活中的黑板报一样,论坛按不同的主题分为许多版块,版面的设立依据是大多数用户的要求和喜好,用户可以阅读别人关于某个主题的看法,也可以将自己的想法毫无保留地贴到论坛中。随着计算机网络技术的不断发展,BBS论坛的功能越来越强大,目前BBS的主要功能有以下几点。
(1)供用户自我选择阅读若干感兴趣的专业组和讨论组内的信息。
(2)可随意检查是否有新消息发布并选择阅读。
(3)用户可在站点内发布消息或文章供他人查阅。
(4)用户可就站点内其他人的消息或文章进行评论。
(5)同一站点内的用户互通电子邮件,设定好友名单。
现实生活中的交流存在时间和空间上的局限性,交流人群范围的狭小以及间断的交流不能保证信息的准确性和可取性。因此,用户需要通过网上论坛(也就是BBS的交流)扩大交流面,同时可以从多方面获得自己的及时需求。同时信息时代迫切要求信息传播速度加快,局部范围的信息交流只会减缓前进的步伐。
BBS系统的开发能为分散于五湖四海的人提供一个共同交流、学习、倾吐心声的平台,实现来自不同地方用户的极强的信息互动性,用户在获得自己所需要的信息的同时也可以广交朋友拓宽自己的视野和扩大自己的社交面。
论坛系统的基本功能包括用户信息的录入、查询、修改和删除,用户留言及头像的前台显示功能,其中还包括管理员的登录信息。
20.2 系统功能模块
论坛管理系统的重要功能是管理论坛帖子的基本信息。通过论坛管理系统可以提高论坛管理员的工作效率。本节将详细介绍该系统的功能。
论坛系统主要分为5个管理部分,包括用户管理、管理员管理、版块管理、主帖管理和回复帖管理。
该图中模块的详细介绍如下。
(1)用户管理模块:实现新增用户,查看和修改用户信息功能。
(2)管理员管理模块:实现新增管理员,查看、修改和删除管理员信息功能。
(3)版块管理模块:实现对管理员、对管理的模块和管理的评论赋权功能。
(4)主帖管理模块:实现对主帖的增加、查看、修改和删除功能。
(5)回复帖管理模块:实现有相关权限的管理员对回复帖的审核和删除功能。
通过本节的介绍,读者对论坛系统的主要功能有了一定的了解,下一节会介绍本系统所需要的数据库和表。
20.3 数据库设计和实现
在进行数据库设计时要确定设计哪些表、表中包含哪些字段、字段的数据类型和长度。本节主要讲述论坛数据库的设计和实现过程。
20.3.1 设计表的E-R图
在设计表之前,用户可以先设计出其E-R图。
1.用户表的E-R图
用户表为user
2.管理员表的E-R图
管理员表为admin
3.版块表的E-R图
版块表为section
4.主贴表的E-R图
主帖表为topic
5.回复贴表的E-R图
回复帖表为reply
20.3.2 设计表
本系统所有的表都放在bbs数据库下,创建和选择bbs数据库的SQL代码如下:
#创建bbs数据库
CREATE DATABASE bbs;
#选择数据库
USE bbs;
在这个数据库中共存放5张表,分别是user、admin、section、topic和reply。
1.user表(用户表)
user表中存储用户编号、用户姓名、用户密码和用户Email等,所以user表设计了10个字段。
创建user表。创建user表的SQL语句如下:
#创建user表(用户表)
CREATE TABLE user(
uID int PRIMARY KEY UNIQUE NOT NULL, #用户编号
userName varchar(20) NOT NULL, #用户姓名
userPassword varchar(20)</