基于MVC的个人博客系统本科毕业设计(论文) 联系客服

发布时间 : 星期六 文章基于MVC的个人博客系统本科毕业设计(论文)更新完毕开始阅读

贵阳学院毕业设计(论文)

第四章 数据库设计

一个设计良好的数据库,可以使系统的实现变得非常的简单。同时,也可以使系统的执行速度变得很快。反之,一个设计混乱的数据库,不仅增加了吸引的管理实现过程,同时在系统的执行过程中,使得检索变得很慢,降低效率。所以数据库的设计是一个系统设计很重要的步骤。

第一节 数据库需求分析

由于本系统面向的对象有两个:注册用户和未注册用户。所以,数据库需求分析中就要考虑两方面因素。

对于未注册用户来说,他们主要就是浏览博客内容与评论。通过系统功能分析,针对未注册用户的需求,总结出如下关系:

1. 一篇博客可以有多个评论。 2. 一个评论只能对应一篇博客。

对于注册用户来说,他们所关心的是如何对博客内容的添加、修改和删除,对其它用户评论的修改和删除,对博客分类的添加、修改和删除,还有错误日志与文件的处理等。通过分析,针对注册用户,总结出如下关系:

1. 一篇博客可以对应多个分类。 2. 一个分类可以对应多个博客。 3. 一个用户可以对应多篇博客。 4. 一篇博客只能对应一个用户。

5. 上传文件存储与及错误日志的存储。

第二节 数据库概念设计

根据上面的数据库需求分析,就可以构造出各种实体,以及并根据它们的关系绘制出实体间的E-R图,为以后的逻辑设计打下基础。本系统实体间的E-R图如图4.1所示:

10

贵阳学院毕业设计(论文)

图4.1 博客系统数据库E-R图

第三节 数据库逻辑设计

数据库中各表的逻辑关系如图4.2所示:

11

贵阳学院毕业设计(论文)

图4.2 数据库关系图

第四节 数据表设计

根据上面两节的设计思路,我设计了七张表,分别是:

一、blogentrys表

blogentrys表主要用来存储博客网站中用户张贴的随笔或者文章。

表4.1 blogengrys表

字段名称 id author_id title description type allowcomment markprivate body datecreated datepublished datemodified

数据类型 int int nvarchar ntext nvarchar bit bit ntext datetime datetime datetime 字段长度 4 4 150 max 10 1 1 max 8 8 8 是否为空 NOT NULL NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 描述 主键ID 作者ID 标题 摘要 类型 是否允许评论 是否为私有 内容 创建时间 发表时间 修改时间 12

贵阳学院毕业设计(论文)

二、authors表

authors表主要是用来存储博客网站中的用户数据。

表4.2 authors表 字段名称 id username password description 数据类型 int nvarchar nvarchar nvarchar 字段长度 4 100 50 150

是否为空 NOT NULL NULL NULL NULL 描述 主键ID 用户名 用户密码 用户描述

三、tags表

tags表主要用来存储博客网站中文章的分类目录。

表4.3 tags表 字段名称 id tagname 数据类型 int nvarchar 字段长度 4 100 是否为空 NOT NULL NULL 描述 主键ID 分类名称 四、blog_tags表

blog_tags表主要用来实现数据表blogentrys与数据表tags之间多对多的关系。

表4.4 blog_tags表

字段名称 id tag_id blog_id 数据类型 int int int 字段长度 4 4 4 是否为空 NOT NULL NULL NULL 描述 主键ID 分类ID 博客ID 五、comments表

comments表主要用来存储浏览者对随笔或者文章的评论。

表4.5 comments表 字段名称 id author blog_id IP datecreated datemodifiled body

数据类型 int nvarchar int nvarchar datetime datetime ntext 字段长度 4 100 4 50 8 8 max 是否为空 NOT NULL NULL NOT NULL NULL NULL NULL NULL 描述 主键ID 作者 博客ID IP地址 创建时间 修改时间 内容 13