课程设计Ⅳ设计说明书网站新闻发布与管理系统的数据库设计和数据操作学生姓名周朝学号**********班级网络1101班成绩指导教师杨刚数学与计算机科学学院2014年 6 月 27 日课程设计任务书2013—2014学年第二学期课程设计名称:课程设计IV课程设计题目:网站新闻发布与管理系统的数据库设计和数据操作完成期限:自2014年6月16日至2014年6月28日共2周设计内容:1. 任务说明本系统的主要功能如下:1) 具有用户注册及个人信息管理功能。
2) 管理员可以发布新闻、删除新闻。
3) 用户注册后可以对新闻进行评论、发表留言。
4) 管理员可以管理留言和对用户进行管理。
2. 要求1) 在调查或了解的基础上,进行系统分析。
2) 根据逻辑设计方案,进行系统设计。
3) 课程设计的重点:系统的分析、数据库设计、用SQL语句进行数据操作。
3. 参考资料[1] 苗雪兰,刘瑞新,宋会群.数据库系统原理及应用教程(第2版)[M].北京:机械工业出版社,2006.[2] 向阳.信息系统分析与设计(第1版)[M].北京:清华大学出版社,2009.[3] 卫红春.信息系统分析与设计[M].西安:西安电子科技大学出版社,2003.指导教师:杨刚教研室负责人:陈波课程设计评阅摘要设计了一个新闻发布和管理系统,主要完成了系统分析、数据库设计和实现、数据操作等内容。
该系统具体功能有:添加并删除用户,管理员发表新闻删除新闻,注册用户对新闻进行评论发表留言,管理员对用户进行管理。
数据库实现采用SQL Server 2008数据库管理系统。
关键词:新闻发布;管理系统;系统分析;SQL Server目录1 课题描述 (1)1.1课程设计的内容 (1)1.2课程设计的目的 (1)2需求分析 (2)2.1功能分析 (2)2.2数据流程分析 (2)2.2.3系统数据字典 (3)3 系统总体设计 (5)3.1模块划分 (5)3.2系统功能模块图 (5)4 数据库的设计 (6)4.1概念结构设计 (6)4.2数据库逻辑结构设计 (8)4.3数据库物理结构设计 (8)5 数据库的数据操作 (11)5.1数据库的创建 (11)5.2数据操作 (12)6总结 (15)参考文献 (16)1课题描述1.1课程设计的内容本次课程设计是要设计一个网站新闻发布与管理系统,完成对网站新闻发布与管理系统数据库的设计并进行数据操作。
网站新闻发布与管理系统可以发布和管理新闻信息,主要实现用户浏览与评论新闻和管理员发布与管理新闻以及管理评论。
具体实现一些功能,为用户提供用户管理,为管理员提供新闻管理、权限管理、管理员管理和评论管理。
1.2 课程设计的目的本次课程设计重在对学习过的理论知识进行实际应用。
在了解相关信息的基础上,进行系统分析。
根据逻辑设计方案,进行系统设计,重在系统的分析与数据库设计方面。
加强掌握数据库设计流程,为系统实现奠定重要基础。
2需求分析2.1 功能分析设计管理系统对于用户和管理员,应实现以下功能:1)用户管理:提供用户注册,注册后查看和修改个人信息和对新闻发表评论的功能。
2)管理员管理:高权限管理员(超级管理员)可新增、查看、修改和删除低权限管理员信息。
3)权限管理:给管理员赋权,设定某一权限可操作的模块和是否可管理新闻评论。
3)新闻管理:有相关权限的管理员可发布和管理新闻信息。
3)评论管理:有相关权限的管理员可审核新闻评论。
2.2数据流程分析2.2.1数据流程分析的工具数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。
在数据流图中没有任何具体的物理元素,它只是描绘信息在系统中流动和被处理的情况。
数据流图的四种基本符号和具体描述如图2.1所示加工外部实体数据存储数据流图2.1 数据流图的基本符号数据流图在系统分析中的主要作用体现在以下几点:(1)数据流图是系统逻辑功能的图形表示,即使不是专业的计算机人员也容易理解它,所以它是分析员和用户之间极好的通信工具。
(2) 数据流图能清楚地描绘数据在系统中的流动和被处理的逻辑过程。
(3)数据流图是系统逻辑功能的图形表示,容易理解。
2.2.2系统数据流图通过对系统的分析,顶层数据流图如图2.2所示,系统数据流图如2.3所示图2.2 顶层数据流图图2.3 系统数据流图2.2.3 系统数据字典数据字典(DD,Data Dictionary)是以特定格式记录下来的、对系统的数据流程图中各个基本要素(数据流、加工、存储和外部项)的内容和特征所作的完整的定义和说明。
数据字典是对数据流程图的重要补充和说明。
数据字典中有五种类型的条目:外部实体,数据流,数据存储,数据项和加工。
数据字典中包括数据定义,但除了它之外,还包含其它一些信息。
一般信息,包括名字,别名和描述。
针对以上数据流图,给出部分项的说明。
(1)管理员信息数据流名:管理员信息别名:描述:管理员信息组成:管理员信息 = 管理员编号+管理员名称+管理员密码备注:(2)权限信息数据流名:权限信息别名:描述:权限信息组成:权限信息 = 权限编号+权限名称备注:(3)评论信息数据流名:权评论信息别名:描述:评论信息组成:评论信息 = 评论编号+评论标题+评论内容+评论时间备注:(4)栏目信息数据流名:栏目信息别名:描述:栏目信息组成:栏目信息 = 栏目编号+栏目名称+栏目描述备注:栏目是说明新闻所属的类别,如国内新闻,国际新闻。
(5)处理过程处理过程名:新闻信息管理别名:描述:对新闻信息进行管理处理说明:建立新闻表,对新闻进行编号;实现对新闻的增删和维护功能备注:新闻编号唯一不可空(6)用户数据存储数据存储名:用户数据别名:描述:新用户存储数据结构:用户信息 = 用户编号+用户名称+用户密码+用户性别+用户Email 备注:3 系统总体设计3.1 模块划分设计一个备忘录管理系统,具体分为四大模块,如下:(1)用户管理模块:实现新增用户,查看和修改用户信息功能;(2)管理员管理模块:实现新增管理员,查看、修改和删除管理员信息功能; (3)权限管理模块:实现对管理员、对管理的模块和管理的评论赋权功能;(4)新闻管理模块:实现有相关权限的管理员对新闻的增加、查看、修改和删除功能; (5)评论管理模块:实现有相关权限的管理员对评论的审核和删除功能; 3.2 系统功能模块图系统结构图是用树形结构的一系列多层次的矩形框来描绘系统的层次结构。
树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个模块的子集,最底层的各个框代表组成这个系统的独立功能模块。
本系统的总体结构图如图3.1所示。
图3.1 系统功能模块图网站新闻发布与管理系统 用户管理管理员管理 权限管理 新闻管理 评论管理注册新用户查看用户信息 修改用户信息 注册新管理员管理管理员信息管理新闻信息 新增新闻信息 审核评论 删除评论评论赋权栏目赋权 管理员赋权4数据库的设计4.1 概念结构设计概念结构设计是将系统需求分析得到的用户需求抽象为反映用户观点的信息结构的过程。
概念结构设计的结果是数据库的概念模型,即E-R模型。
由于它是从现实世界的角度进行抽象和描述,所以它与计算机硬件、数据库逻辑结构和支持数据库的DBMS无关。
在数据库设计中应重视概念结构设计,它是整个数据库设计的关键,是为计算机存储数据做准备工作。
根据需求分析结果,主要有用户实体、管理员实体、新闻实体和评论实体4个实体。
各实体属性图如图4.1-4.6所示,系统总体E-R图如图4.7所示。
图4.1 用户信息的实体属性图管理员名称密码编号图4.2 管理员信息的实体属性图权限名称编号图4.3 权限信息的实体属性图新闻编号标题内容描述图4.4 新闻信息的实体属性图栏目编号名称描述图4.5 栏目信息的实体属性图评论编号标题内容时间图4.6 评论信息的实体属性图图4.7 系统总体E-R图4.2数据库逻辑结构设计E-R图表示的概念模型是用户数据要求的形式化。
E-R图是独立于任何一种数据模型的概念信息结构,也不为任何一个DBMS所支持。
逻辑结构设计的任务就是把概念结构设计好的基本E-R图转换为与选用的某个具体的DBMS所支持的数据模型相符合的逻辑结构,设计的结果是一组关系模式。
将图4.7中系统E-R图转换成关系模型如下:用户(编号,名称,密码,性别,Email);管理员(编号,名称,密码);权限(编号,名称);新闻(编号,标题,内容,发布时间,新闻描述);栏目(编号,名称,描述);评论(评论编号,评论标题,评论内容,评论时间);4.3 数据库物理结构设计数据库的物理结构主要指数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统。
设计的任务是选择合适的存储结构和存取路径,也就是设计数据库的内模式。
内模式和逻辑模式不一样,不直接面向用户,一般的用户不一定、也不需要了解内模式的设计细节。
内模式的设计可以不考虑用户理解的方便,其主要的设计目标有两个:其一提高数据库的性能,特别是满足主要应用的性能要求;其二能够有效地利用存储空间。
根据数据库物理结构设计理论,将该系统逻辑结构转换为物理结构,如下所示:(1)用户信息表用户信息表(Users)主要用来存放用户账号信息,如表4.1所示。
表4.1用户信息表列名数据类型允许NULL值说明UserID int 否用户编号UserName nvarchar(20) 否用户名称UserPassword nvarchar(20) 否用户密码Sex nvarchar(10) 否用户性别UserEmail nvarchar(20) 否用户Email (2)管理员信息表管理员信息表(Admin)主要用来存放用户账号信息,如表4.2所示。
表4.2管理员信息表列名数据类型允许NULL值说明AdminID int 否管理员编号AdminName invarchar(20) 否管理员名称AdminPassword nvarchar(20) 否管理员密码(3)权限信息表权限信息表(Roles)主要用来存放权限信息,如表4.3所示。
表4.3权限信息表列名数据类型允许NULL值说明RoleID int 否权限编号RoleName Nvarchar(20) 否权限名称(4)新闻信息表新闻信息表(News)主要用来存放新闻信息,如图4.4所示。
表4.4新闻信息表列名数据类型允许NULL值说明NewsID int 否新闻编号NewsTitle nvarchar(50) 否新闻标题NewsContent ntext 否新闻内容NewsDate datetime 是发布时间NewsDesc nvarchar(50) 否新闻描述(5)栏目信息表栏目信息表(Categroy)主要用来存放新闻栏目信息,如图4.5所示。