数据库课程设计(新闻发布系统)_第1页
数据库课程设计(新闻发布系统)_第2页
数据库课程设计(新闻发布系统)_第3页
数据库课程设计(新闻发布系统)_第4页
数据库课程设计(新闻发布系统)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计设计说明书网站新闻发布与管理系统的数据库设计和数据操作学生姓名鲁泽民学 号1018064030班 级网络 101 班成 绩 指导教师杨刚数学与计算机科学学院 2013 年 6 月 17 日 课程设计任务书20122013 学年 第二学期课程设计名称:课程设计 课程设计题目:网站新闻发布与管理系统的数据库设计和数据操作 完 成 期 限:自 2013 年 6 月 17 日 至 2013 年 6 月 28 日 共 2 周设计内容:1.任务说明备忘录管理系统可以为用户提供日常信息管理,主要为使用者提供对个人信息更方便的记录和查询等功能。具体要求实现以下一些基本功能:1)日常记录管理:记录日常生

2、活或者工作事件,以免遗忘,并提供记录的查询、浏览、修改和删除等管理功能。2)通讯薄管理:记录朋友、亲属、同事等联系人的通讯信息,以免遗忘,并提供记录的查询、浏览、修改和删除等管理功能。3)密码备忘管理:记录日常使用的密码信息,比如银行帐号密码、邮箱密码、一些网站登陆密码等,以免遗忘,并提供记录的查询、浏览、修改和删除等管理功能。4)系统维护:操作员管理、权限管理等。2. 要求1) 在调查或了解的基础上,进行系统分析。 2) 根据逻辑设计方案,进行系统设计。 3) 课程设计的重点在系统的分析和数据库设计方面。3. 参考资料1 苗雪兰,刘瑞新,宋会群.数据库系统原理及应用教程(第 2 版)M.北京

3、:机械工业出版社,2006.2 向阳.信息系统分析与设计(第 1 版)M.北京:清华大学出版社,2009.3 卫红春.信息系统分析与设计M.西安:西安电子科技大学出版社,2003.指导教师:杨刚 教研室负责人:陈波课程设计评阅评语: 指导教师签名: 年 月 日摘 要设计了一个备忘录管理系统,主要完成了系统分析、数据库设计和实现、数据操作等内容。该系统具体功能有:记录日常生活或者工作事件,记录朋友、亲属、同事等联系人的通讯信息,也可以记录日常使用的密码信息等,数据库实现采用 SQL Server 2008 数据库管理系统。关键词关键词:备忘;管理系统;系统分析;SQL Server目目 录录1

4、课题描述课题描述.12 需求分析需求分析.22.1 功能分析功能分析.22.2 数据流程分析数据流程分析.22.3 数据字典数据字典.33 系统总体设计系统总体设计.53.1 模块划分模块划分.53.2 系统功能模块图系统功能模块图.54 数据库的设计数据库的设计.64.1 概念结构设计概念结构设计.64.2 逻辑结构设计逻辑结构设计.64.3 数据库物理结构设计数据库物理结构设计.75 数据库的数据操作数据库的数据操作.95.1 数据库的创建数据库的创建.95.2 数据操作数据操作.96 总结总结.18参考文献参考文献.1901 课题描述 1)内容本次课程设计是要设计一个网站新闻发布与管理系

5、统,完成对网站新闻发布与管理系统数据库的设计并进行数据操作。网站新闻发布与管理系统可以发布和管理新闻信息,主要实现用户浏览与评论新闻和管理员发布与管理新闻以及管理评论。具体实现一些功能,为用户提供用户管理,为管理员提供新闻管理、权限管理、管理员管理和评论管理。 2)目的本次课程设计重在对学习过的理论知识进行实际应用。在了解相关信息的基础上,进行系统分析。根据逻辑设计方案,进行系统设计,重在系统的分析与数据库设计方面。加强掌握数据库设计流程,为系统实现奠定重要基础。12 需求分析2.1 功能分析功能分析设计管理系统对于用户和管理员,应实现以下功能:1)用户管理:提供用户注册,注册后查看和修改个人

6、信息和对新闻发表评论的功能。2)管理员管理:高权限管理员(超级管理员)可新增、查看、修改和删除低权限管理员信息。3)权限管理:给管理员赋权,设定某一权限可操作的模块和是否可管理新闻评论。3)新闻管理:有相关权限的管理员可发布和管理新闻信息。3)评论管理:有相关权限的管理员可审核新闻评论。2.2 数据流程分析数据流程分析1)数据流程分析的工具数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理元素,它只是描绘信息在系统中流动和被处理的情况。数据流图的四种基本符号和具体描述如图 2.1 所示。加工外部实体数据存储数据流图 2.1

7、 数据流图的基本符号数据流图在系统分析中的主要作用体现在以下几点:(1)数据流图是系统逻辑功能的图形表示,即使不是专业的计算机人员也容易理解它,所以它是分析员和用户之间极好的通信工具。(2) 数据流图能清楚地描绘数据在系统中的流动和被处理的逻辑过程。(3)数据流图是系统逻辑功能的图形表示,容易理解。2)系统数据流图通过对系统的分析,第 0 层数据流图如图 2.1 所示,第 1 层数据流图如 2.1 所示,通讯录管理模块第 2 层数据流图如图 2.3 所示。2 浏览新闻、发表评论 发布与管理新闻 展示新闻 图 2.1 第 0 层数据流图 用户数据用户表 用户信息权限_模块表权限_评论表 管理员_

8、权限表管理员表新闻表评论表图 2.2 第 1 层数据流图2.3 数据字典数据字典数据字典(DD,Data Dictionary)是以特定格式记录下来的、对系统的数据流程图中各个基本要素(数据流、加工、存储和外部项)的内容和特征所作的完整的定义和说明。数据字典是对数据流程图的重要补充和说明。数据字典中有五种类型的条目:外部实体,数据流,数据存储,数据项和加工。数据字典中包括数据定义,但除了它之外,还包含其它一些信息。一般信息,包括名字,别名和描述。针对以上数据流图,给出部分项的说明。(1)用户信息数据流名:用户信息别名:描述:用户信息组成:用户信息 = 用户编号+用户名称+用户密码+用户 Ema

9、il备注:(2)管理员信息数据流名:管理员信息网站新闻发布与管理系统管理员用户用户用户管理管理员管理权限管理新闻管理评论管理管理员3别名:描述:管理员信息组成:管理员信息 = 管理员编号+管理员名称+管理员密码备注:(3)新闻信息数据流名:新闻信息别名:描述:新闻信息组成:新闻信息 = 新闻编号+新闻标题+新闻内容+发布时间+新闻描述+图片路径+点击率+是否审核通过+是否置顶备注:(4)权限信息数据流名:权限信息别名:描述:权限信息组成:权限信息 = 权限编号+权限名称备注:(5)模块信息数据流名:模块信息别名:描述:模块信息组成:模块信息 = 模块编号+模块名称+模块父编号备注:模块是说明管

10、理员管理新闻的类型,如文章管理,图片管理等。(6)栏目信息数据流名:栏目信息别名:描述:栏目信息组成:栏目信息 = 栏目编号+栏目名称+栏目父编号+栏目描述备注:栏目是说明新闻所属的类别,如国内新闻,国际新闻。父编号表示其嵌套关系,如国内的娱乐新闻。(7)评论信息数据流名:权评论信息别名:描述:评论信息组成:评论信息 = 评论编号+评论标题+评论内容+评论时间4备注:53 系统总体设计3.1 模块划分模块划分设计一个备忘录管理系统,具体分为四大模块,如下:(1)用户管理模块:实现新增用户,查看和修改用户信息功能;(2)管理员管理模块:实现新增管理员,查看、修改和删除管理员信息功能;(3)权限管

11、理模块:实现对管理员、对管理的模块和管理的评论赋权功能;(4)新闻管理模块:实现有相关权限的管理员对新闻的增加、查看、修改和删除功能;(5)评论管理模块:实现有相关权限的管理员对评论的审核和删除功能;3.2 系统功能模块图系统功能模块图备忘录管理系统是利用计算机实现对用户记录信息的管理,严格按照系统总体设计模块划分方案,分为用户管理、管理员管理、权限管理、新闻管理和评论管理五大模块。系统功能框架图如下所示:图 3.1 系统功能模块图网站新闻发表与管理系统用户管理管理员管理权限管理新闻管理评论管理注册新用户查看用户信息修改用户信息注册新管理员管理管理员信息管理新闻信息新增新闻信息审核评论删除评论

12、评论赋权模块赋权管理员赋权64 数据库的设计4.1 概念结构设计概念结构设计概念结构设计是将系统需求分析得到的用户需求抽象为反映用户观点的信息结构的过程。概念结构设计的结果是数据库的概念模型,即 E-R 模型。由于它是从现实世界的角度进行抽象和描述,所以它与计算机硬件、数据库逻辑结构和支持数据库的 DBMS 无关。在数据库设计中应重视概念结构设计,它是整个数据库设计的关键,是为计算机存储数据做准备工作。根据需求分析结果,主要有用户实体、日常记录本实体、通讯录实体和密码备忘录实体 4 个实体。各实体属性图如图 4.1-4.7 所示,系统总体 E-R 图如图 4.8 所示。 图 4.1 用户信息的

13、实体属性图 图 4.2 管理员信息的实体属性图 图 4.3 权限信息的实体属性图 用户用户编号用户名称用户密码用户 Email管理员管理员编号管理员名称管理员密码权限权限编号号权限名称码7 图 4.4 新闻信息的实体属性图 图 4.5 模块信息的实体属性图 图 4.6 栏目信息的实体属性图 图 4.7 评论信息的实体属性图 新闻新闻编号新闻标题新闻内容发布时间栏目栏目编号栏目名称栏目描述栏目父编号评论评论编号评论标题评论内容评论时间新闻描述图片路径点击率是否审核是否置顶模块模块编号模块名称模块父编号8 图 4.8 系统总体 E-R 图 管理员属于角色评论管理员_权限编号模块管理管理属于新闻属于

14、栏目 发表浏览用户属于权限_评论编号权限_模块编号新闻_模块编号新闻_栏目编号用户_评论编号新闻_评论编号94.2 逻辑结构设计逻辑结构设计E-R 图表示的概念模型是用户数据要求的形式化。E-R 图是独立于任何一种数据模型的概念信息结构,也不为任何一个 DBMS 所支持。逻辑结构设计的任务就是把概念结构设计好的基本 E-R 图转换为与选用的某个具体的 DBMS 所支持的数据模型相符合的逻辑结构,设计的结果是一组关系模式。将图 4.8 中系统 E-R 图转换成关系模型如下:用户(用户编号,用户名称,用户密码,用户 Email) ;管理员(管理员编号,管理员名称,管理员密码) ;权限(权限编号,权

15、限名称) ;新闻(新闻编号,新闻标题,新闻内容,发布时间,新闻描述,图片路径,点击率,是否审核,是否置顶) ;模块(模块编号,模块名称,模块父编号) ;栏目(栏目编号,栏目名称,栏目父编号,栏目描述) ;评论(评论编号,评论标题,评论内容,评论时间) ;管理员_权限(管理员-权限编号,管理员编号,权限编号) ;权限_模块(权限-模块编号,权限编号,模块编号) ;权限_评论(权限-评论编号,权限编号) ;新闻_模块(新闻-模块编号,新闻编号,模块编号) ;新闻_栏目(新闻-栏目编号,新闻编号,栏目编号) ;新闻_评论(新闻-评论编号,新闻编号,评论编号) ;用户_评论(用户-评论编号,用户编号,

16、评论编号) ;4.3 数据库物理结构设计数据库物理结构设计数据库的物理结构主要指数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统。设计的任务是选择合适的存储结构和存取路径,也就是设计数据库的内模式。内模式和逻辑模式不一样,不直接面向用户,一般的用户不一定、也不需要了解内模式的设计细节。内模式的设计可以不考虑用户理解的方便,其主要的设计目标有两个:其一提高数据库的性能,特别是满足主要应用的性能要求;其二能够有效地利用存储空间。根据数据库物理结构设计理论,将该系统逻辑结构转换为物理结构,如下所示:(1)用户信息表用户信息表(Users)主要用来存放用户账号信息,如表 4.1 所示。

17、表 4.1 用户信息表列名数据类型允许 NULL 值说明UserIDint否用户编号UserNamenvarchar(20)否用户名称UserPasswordnvarchar(20)否用户密码UserEmailnvarchar(20)否用户 Email(2)管理员信息表10管理员信息表(Admin)主要用来存放用户账号信息,如表 4.2 所示。表 4.2 管理员信息表列名数据类型允许 NULL 值说明AdminIDint否管理员编号AdminNameinvarchar(20)否管理员名称AdminPasswordnvarchar(20)否管理员密码(3)权限信息表权限信息表(Roles)主要用

18、来存放权限信息,如表 4.3 所示。表 4.3 权限信息表列名数据类型允许 NULL 值说明RoleIDint否权限编号RoleNameNvarchar(20)否权限名称(4)新闻信息表新闻信息表(News)主要用来存放新闻信息,如图 4.4 所示。表 4.4 新闻信息表列名数据类型允许 NULL 值说明NewsIDint否新闻编号NewsTitlenvarchar(50)否新闻标题NewsContentntext否新闻内容NewsDatedatetime是发布时间NewsDescnvarchar(50)否新闻描述NewImagePathnvarchar(50)否图片路径NewsRateint

19、否点击率NewsIsCheckbit否是否审核NewsIsTopbit否是否置顶(5)模块信息表模块信息表(Modules)主要用来存放新闻模块信息,如图 4.5 所示。表 4.5 模块信息表列名数据类型允许 NULL 值说明ModuleIDint否模块编号ModuleNamenvarchar(50)否模块名称ModulePIDintt否模块父编号(6)栏目信息表栏目信息表(Categroy)主要用来存放新闻栏目信息,如图 4.6 所示。表 4.6 栏目信息表列名数据类型允许 NULL 值说明CategroyIDint否栏目编号CategroyNamenvarchar(50)否栏目名称Cate

20、groyPIDint否栏目父编号CategroyDescnvarchar(50)否栏目描述(7)评论信息表评论信息表(Comment)主要用来存放新闻评论信息,如图 4.7 所示。表 4.7 评论信息表列名数据类型允许 NULL 值说明CommentIDint否评论编号CommentTitlenvarchar(50)否评论标题CommentContentntext否评论内容11CommentDatedatetime是评论时间(8)管理员_权限表管理员_权限表(Admin_Roles)主要用来存放管理员和权限的关系,如图 4.8 所示。表 4.8 管理员_权限表列名数据类型允许 NULL 值说明

21、ARIDint否管理员_权限编号AdminIDint否管理员编号RoleIDint否权限编号(9)权限_模块表权限_模块表(Roles_Modules)主要用来存权限和模块的关系,如图 4.9 所示。表 4.9 权限_模块表列名数据类型允许 NULL 值说明RMIDint否权限_模块编号RoleIDint否权限编号ModuleIDint否模块编号(10)权限_评论表权限_评论表(Roles_Comment)主要用来存放权限和评论的关系,如图 4.10 所示。表 4.10 权限_评论表列名数据类型允许 NULL 值说明RCIDint否权限_评论编号RoleIDint否权限编号(11)新闻_模块表

22、新闻_模块表(News_Modules)主要用来存放新闻和模块的关系,如图 4.11 所示。表 4.11 新闻_模块表列名数据类型允许 NULL 值说明NMIDint否新闻_模块编号NewsIDint否新闻编号ModuleIDint否模块编号(12)新闻_栏目表新闻_栏目表(News_Categroy)主要用来存放新闻和栏目的关系,如图 4.12 所示。表 4.12 新闻_栏目表列名数据类型允许 NULL 值说明NCategroyIDint否新闻_栏目编号NewsIDint否新闻编号CategroyIDint否栏目编号(13)新闻_评论表新闻_评论表(News_Comment)主要用来存放新闻

23、和评论的关系,如图 4.13 所示。表 4.13 新闻_评论表列名数据类型允许 NULL 值说明NCommentIDint否新闻_评论编号NewsIDint否新闻编号CommentIDint否评论编号12(14)用户_评论表用户_评论表(Users_Comment)主要用来存放用户和评论的关系,如图 4.14 所示。表 4.14 用户_评论表列名数据类型允许 NULL 值说明UCIDint否用户_评论编号UserIDint否用户编号CommentIDint否评论编号135 数据库的数据操作5.1 数据库的创建数据库的创建根据数据库设计结果,利用 SQL Server Management 工具

24、,用 SQL 语句创建数据库。创建数据库语句如下所示:create database NewsManagementSystemuse NewsManagementSystem-管理员表create table Admin(AdminID int primary key identity(1,1),AdminName nvarchar(20) not null,AdminPassword nvarchar(20) not null)-权限表create table Roles(RoleID int primary key identity(1,1),RoleName nvarchar(20) n

25、ot null)-管理员权限表create table Admin_Roles(ARID int identity(1,1),AdminID int,RoleID int,constraint ARPK primary key(ARID,AdminID,RoleID),constraint ARFK foreign key(AdminID) references Admin(AdminID),constraint ARFK2 foreign key(RoleID) references Roles(RoleID)-模块表create table Modules(ModuleID int pri

26、mary key identity(1,1),ModuleName nvarchar(50) not null,ModulePID int not null)-权限模块表create table Roles_Modules(RMID int identity(1,1),RoleID int,ModuleID int,constraint RMPK primary key(RMID,RoleID,ModuleID),constraint RMFK foreign key(RoleID) references Roles(RoleID),constraint RMFK2 foreign key(M

27、oduleID) references Modules(ModuleID)-评论表create table Comment(CommentID int primary key identity(1,1),CommentTitle nvarchar(50) not null,CommentContent ntext not null,CommentDate datetime default getdate()14)-权限评论表create table Roles_Comment(RCID int identity(1,1),RoleID int,constraint RCPK primary k

28、ey(RCID,RoleID),constraint RCFK foreign key(RoleID) references Roles(RoleID),)-用户表create table Users(UserID int primary key identity(1,1),UserName nvarchar(20) not null,UserPassword nvarchar(20) not null,UserEmail nvarchar(20) not null)-用户评论表create table Users_Comment(UCID int identity(1,1),UserID i

29、nt,CommentID int,constraint UCPK primary key(UCID,UserID,CommentID),constraint UCFK foreign key(UserID) references Users(UserID),constraint UCFK2 foreign key(CommentID) references Comment(CommentID)-新闻表create table News(NewsID int primary key identity(1,1),NewsTitle nvarchar(50) not null,NewsContent

30、 ntext not null,NewsDate datetime default getdate(),NewsDesc nvarchar(50) not null,NewsImagePath nvarchar(50),NewsRate int,NewsIsCheck bit,NewsIsTop bit)-新闻评论表create table News_Comment(NCommentID int identity(1,1),NewsID int,CommentID int,constraint NCommentPK primary key(NCommentID,NewsID,CommentID

31、),constraint NCommentFK foreign key(NewsID) references News(NewsID),constraint NCommentFK2 foreign key(CommentID) references Comment(CommentID)-新闻模块表create table News_Modules(NMID int identity(1,1),NewsID int,ModuleID int,constraint NMPK primary key(NMID,NewsID,ModuleID),15constraint NMFK foreign ke

32、y(NewsID) references News(NewsID),constraint NMFK2 foreign key(ModuleID) references Modules(ModuleID)-栏目表create table Category(CategoryID int primary key identity(1,1),CategoryName nvarchar(50) not null,CategoryPID int not null,CategoryDesc nvarchar(50) not null)-新闻栏目表create table News_Category(NCat

33、egroyID int identity(1,1),NewsID int,CategoryID int,constraint NCategroyPK primary key(NCategroyID,NewsID,CategoryID),constraint NCategroyFK foreign key(NewsID) references News(NewsID),constraint NCategroyFK2 foreign key(CategoryID) references Category(CategoryID)5.2 数据操作数据操作1)数据插入操作向用户表中添加一些新用户,SQL

34、 语句如下所示:use db_Memoinsert tb_User values(Lee,111,2)insert tb_User values(Chen,222,3)insert tb_User values(Qin,333,4)数据插入结果如图 5.1 所示图 5.1 用户信息表添加信息结果2)简单数据查询向新建表中插入新数据后,查询日常记录信息,SQL 语句如下所示:use db_Memoselect Theme,Content,Date,Week,Time,City,WeatherFrom tb_DaiRecord数据查询结果如图 5.2 所示16图 5.2 查询所有日常记录信息结果3

35、)嵌套查询根据数据库中已添加的信息,现在查询用户 Lee 的所有好友通讯录信息,SQL 语句如下所示:use db_Memoselect Name,Tel,Email,Groups,MemoFrom tb_AddBook,tb_UserWhere tb_AddBook.UserNum=tb_User.UserNum and UserNum=Lee数据查询结果如图 5.3 所示图 5.3 用户 lee 的所有好友通讯录信息4)为数据库表中列创建 CHECK 约束在创建的日常记录信息表,为列 Week 创建 CHECK 约束,使其值只能为星期一、星期二、星期三、星期四、星期五、星期六、星期日,SQ

36、L 语句如下所示:use db_Memoalter table tb_DaiRecord with checkadd constraint CHECK_WEEK check(week=星期一 or week=星期二 or week=星期三 or week=星期四 or week=星期五 or week=星期六 or week=星期日) 创建 CHECK 约束结果如图 5.4 所示:图 5.4 为日常记录表中列 Week 创建 CHECK_WEEK 约束结果5)为数据库表中列创建 DEFAULT 约束新建用户后,为用户创建初始密码,即对用户表中列 PassWord 创建 DEFAULT 约束,创建 SQL语句如下所示:use db_MemoALTE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论