数据库课程设计.docx

上传人:b****1 文档编号:14316770 上传时间:2023-06-22 格式:DOCX 页数:30 大小:387.52KB
下载 相关 举报
数据库课程设计.docx_第1页
第1页 / 共30页
数据库课程设计.docx_第2页
第2页 / 共30页
数据库课程设计.docx_第3页
第3页 / 共30页
数据库课程设计.docx_第4页
第4页 / 共30页
数据库课程设计.docx_第5页
第5页 / 共30页
数据库课程设计.docx_第6页
第6页 / 共30页
数据库课程设计.docx_第7页
第7页 / 共30页
数据库课程设计.docx_第8页
第8页 / 共30页
数据库课程设计.docx_第9页
第9页 / 共30页
数据库课程设计.docx_第10页
第10页 / 共30页
数据库课程设计.docx_第11页
第11页 / 共30页
数据库课程设计.docx_第12页
第12页 / 共30页
数据库课程设计.docx_第13页
第13页 / 共30页
数据库课程设计.docx_第14页
第14页 / 共30页
数据库课程设计.docx_第15页
第15页 / 共30页
数据库课程设计.docx_第16页
第16页 / 共30页
数据库课程设计.docx_第17页
第17页 / 共30页
数据库课程设计.docx_第18页
第18页 / 共30页
数据库课程设计.docx_第19页
第19页 / 共30页
数据库课程设计.docx_第20页
第20页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库课程设计.docx

《数据库课程设计.docx》由会员分享,可在线阅读,更多相关《数据库课程设计.docx(30页珍藏版)》请在冰点文库上搜索。

数据库课程设计.docx

数据库课程设计

湖南文理学院

数据库课程设计报告

 

设计题目:

企业报刊订阅管理系统

学生姓名:

系别:

专业:

班级:

学号:

指导教师:

 

目录

 

概述……………………………………………………………………………………1

1、开发背景1

2、功能描述1

3、数据分析2

3.1、需求分析2

3.1.1、用户需求……………………………………………………………2

3.1.2、业务需求分析……………………………………………………..…2

3.1.3、信息需求分析……………………………………………………..…3

3.1.4、功能需求分析………………………………………………..………3

3.2、数据字典4

4、概念模型设计5

5.逻辑模型设计和优化6

6.物理设计和实施8

6.1、设计索引………………………………………….…………………..8

6.2、设计表间关系………………………………………….…….………8

6.3、完整性设计…………………………………………………………..10

6.4、在多个用户操作,考虑用户授权与安全性控制……………………10

6.5、处理功能设计………………………………………..……………….10

6.6、数据库应用系统的实现…………………………………….……….10

6.7、数据库应用系统的运行……………………………………..………13

7、课程设计心得体会……………………………………………………………….23

参考文献……………………………………………………………………………...23

概述

系统的基本任务

1、录入订阅人员信息、报刊基本信息;

2、订阅人员订阅报刊(并计算出其金额);

3、按人员查询、按报刊查询、按部门查询有关订阅信息,对查询结果能进行预览和打印;

4、按报刊统计、按人员统计、按部门统计,对统计结果能进行预览和打印;

5、操作员管理、权限设置等。

主要业务

1、订阅人可以方便地订阅报刊。

2、操作员对订阅人的信息管理。

开发目标

开发一个既能方便订阅人订阅报刊,也利于操作订阅信息的管理系统

一、开发背景

90年代中期,由于Internet的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。

企业信息管理系统在此基础上延伸、扩展,使之上下、内外全面贯通。

引入Internet后,形成了新型的浏览器/服务器(Browser/Server)结构,而传统的客户机/服务器(Client/Server)结构在这方面就远不及B/S结构。

订阅报刊管理系统是一个商业市场不可缺少的部分。

人工管理方式存在着许多缺点:

效率低,保密性差,另外时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来不少困难。

随着科学技术的不断提高。

计算机学日渐成熟。

它已进入人类社会的各个领域并发挥重要作用。

使用计算机档案信息管理,有好多好处:

查找方便,可靠性高,存储量大,保密性好,成本低等,能够极大提高管理的效率,也是订阅报刊管理的科学化,与世界接轨的重要条件。

二、功能描述

本系统主要面向的用户有操作员、订阅者。

下面分角色对该系统的不同操作范围做说明。

本系统主要有以下功能模块:

(1)登陆功能:

登陆系统为身份验证登录。

分为操作员登录和一般用户登录。

分别通过不同的用户名和密码进入报刊订阅管理界面,新的用户需要注册。

(2)录入新信息功能:

对于操作员,包括新用户信息和新报刊信息的录入功能,信息一旦提交就存入到后台数据库中;普通用户自行注册进行可以修改个人信息。

(3)订阅功能:

用户可以订阅报刊,系统自动计算所需金额,并显示在界面上;操作员不可订阅报刊,必须以用户身份订阅报刊。

(4)查询功能:

用户可以查询并显示自己所订阅的信息;操作员可以按人员、报刊、部门分类查询。

查询出的信息显示在界面上,并且可以预览和打印出结果。

(5)统计功能:

操作员可以按用户、部门、报刊统计报刊的销售情况,并对一些重要的订阅信息进行统计;普通用户可以统计出自己的订阅情况,并且可以预览和打印出结果。

(6)管理功能:

数据的安全管理,主要是依靠操作员对数据库里的信息进行备份和恢复,数据库备份后,如果出了什么意外可以恢复数据库到当时备份的状态,这提高了系统和数据的安全性,有利于系统的维护。

三、数据分析

3.1需求分析

3.1.1用户需求

每天看报刊是大多数人日常生活中必需的事情,企业内的员工也不例外。

因为企业的员工有很多,如果都是每个人自己去订阅的话,会是很不方便。

为了提供订阅,开发一个企业报刊订阅管理系统变得是十分重要。

系统主要解决的问题有几个,第一就是怎样可以方便的录入所有订阅者的信息和报刊信息。

第二是怎样可以让订阅者更方便地在系统中订阅所需要的报刊,这里有几个问题要解决,首先是每种报刊清楚地显示给订阅者,然后可以及时计算出订阅者订阅所有报刊的金额。

第三是方便操作员查询统计订阅者的信息。

系统最终要做到的时维护简单,更新容易。

3.1.2业务流程分析

系统的业务流程大概为:

1)操作员录入企业员工的基本信息和报刊的信息

2)订阅人就可以根本自己员工号等信息登录到系统

3)订阅人可以查看报刊的种类及其相应的信息

4)订阅人在系统里订阅自己需要的报刊

5)操作员查看订阅信息并可预览打印结果

6)操作员统计订阅信息并可预考打印结果

7)操作员处理订阅信息

业务流程图

 

3.1.3信息需求分析

(1)资料收集:

业务流程中用到的相关单据票证帐簿报表报告等资料,画出格式,最好是填有具体内容的表格等。

(2)事项分析:

分析资料中标题、表头等中各栏目名,列出所有事项,作为数据项;分析这些数据项,找出组合项、导出项、非结构化数据项,确定基本项。

检查是否有要补充的基本数据项,是否有要改进的地方,补充改进之,得出所有基本项。

3.1.4功能需求分析

用户所需要系统完成的任务:

1)录入报刊信息和订阅者的信息。

2)可以让订阅者方便地订阅所需要的报刊,并可以及时地计算出所订阅报刊的金额

3)可按各种方式查询订阅信息并可预览打印。

4)可统计订阅信息并可预览打印。

5)操作员可以根据要求管理订阅信息。

3.2、数据字典

(根据编号对数据流程图中的各元素如数据流、数据存储、外部实体和处理逻辑进行细节描述)

3.2.1数据流的描述

数据流编号:

D001

数据流名称:

订阅信息

简述:

订阅者所要订阅的报刊信息单

数据流来源:

订阅者

数据流去向:

查询订阅情况

数据流组成:

订阅者号+报刊名+报刊分类+刊期+出版地等

数据流量:

1000/天

高峰流量:

3000/天

3.2.2处理逻辑的描述

处理逻辑编号:

P001

处理逻辑名称:

查看报刊订阅类型

简述:

查询订阅者所要订阅的的报刊类型

输入的数据流:

D001原有报刊信息、D002新添报刊信息

处理描述:

根据订阅者提供的订阅报刊信息,到仓库中查找是否有该书,有则进行订阅处理,如没有则返回读者该书无库存信息。

输出的数据流:

D001订阅书目信息

处理频率:

1000次/天

处理逻辑编号:

P002

处理逻辑名称:

查询订阅情况

简述:

查询订阅者所订阅的的报刊信息

输入的数据流:

D001订阅信息

处理描述:

根据订阅者所订阅的信息,查询订阅者所订阅的信息

输出的数据流:

D001订阅报刊统计信息

处理频率:

1000次/天

......

3.2.3数据存储的描述

数据存储编号:

F001

数据存储名称:

录入订阅人信息

简述:

订阅者的基本信息

数据存储组成:

员工号+姓名+密码+部门

关键字:

员工号

相关联的处理:

P001

数据存储编号:

F002

数据存储名称:

录入报刊信息

简述:

新录入报刊信息

数据存储组成:

报刊号+报刊名+价格+简介

关键字:

报刊号

相关联的处理:

P001

......

3.2.4外部实体的描述

外部实体编号:

S001

外部实体名称:

订阅人

简述:

从报刊亭订报的的人

输入的数据流:

D002

输出的数据流:

D001

......

四、概念模型设计

写出由基本项构思ERD的四条原则及根据这些原则相应得出的实体、联系及其属性,并确定主实体的主标识,画出ERD(不少于三个主实体,一个联系和24个属性);用原则4检查改正错误;对其中复杂的多元联系进行分析,必要则改进。

1、由基本项构思ERD的四条原则

①原则1(确定实体):

能独立存在的事物,例如人、物、事、地、团体、机构、活动、事项等等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。

②原则2(确定联系):

两个或多个实体间的关联与结合,如主管,从属,组成,占有,作用,配合,协同等等,当需要予以关注时,应作为联系。

实体间的联系可分为一对一、一对多、多对多等三类,在确定联系时还要确定其类型。

③原则3(确定属性):

实体的属性是实体的本质特征。

实体应有标识属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识。

联系的属性是联系的结果或状态。

④原则4(一事一地):

信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。

这条原则是对ERD的检验原则,对确定其构思是否正确具有很大的意义。

首先要看ERD中有没有重复出现的属性名,如果有,一定是错误的,要分析原因,消除重复。

然后要看有无不在信息分析中作为基本项出现的属性,如果有,不一定是错误,但如果不符合基本项的要求,就是错误的,要分析原因,予以改正;如果是基本项,则往往是业务流程用到的资料不太完备,数据库设计者与用户协商后加上去的,要分析增加是否真有必要;如果信息分析中列出的基本项在ERD中没有作为属性出现,则一定要分析原因:

有时是不小心遗漏了,那就要补充到适当的地方;有的是联系的表现形式。

上图符合一事一地检验原则

2、根据这些原则相应得出的实体、联系及其属性,并确定主实体的主标识,画出ERD

五、逻辑模型设计

1、一般逻辑模型设计

列出数据库初步构思的关系框架

订阅人信息(员工号,姓名,密码,部门)

报刊信息(报刊号,报刊名,价格,简介)

订阅信息(员工号,报刊号,订阅期数,订阅时间)

操作员(操作员号,密码)

2、具体逻辑模型设计

SubInformation订阅人信息

字段名

类型

长度

备注

SID员工号

varchar

30

主键

SName姓名

varchar

15

Password密码

varchar

20

Phone手机

varchar

20

City城市

varchar

20

Mail电子邮箱

varchar

30

Sex性别

varchar

10

department部门

varchar

15

 

Newspapers报刊信息

字段名

类型

长度

备注

NID报刊号

varchar

30

主键

NName报刊名

varchar

20

Price价格

varchar

10

Day刊期

varchar

10

Class类别

varchar

20

space出版地

varchar

20

introduction简介

text

16

Subscribe订阅信息

字段名

类型

长度

备注

SID员工号

varchar

30

外键(指向订阅人信息)

NID报刊号

Varchar

30

外键(指向报刊信息)

Num订阅期数

Int

5

Time订阅时间

datetime

8

规定格式为

YYYY-MM-DD

 

Operator操作员

字段名

类型

长度

备注

OID操作员号

Varchar

30

主键

Password密码

Varchar

20

六、物理设计与实施

6.1、设计索引:

在表(文件)的具体结构关系框架下补充字段索引行或在框架外补充索引说明,指出索引字段或索引表达式、索引类型。

1.聚簇索引(ClusterIndex)

∙又称 聚集索引,聚簇索引中索引存储的值的顺序和表中的数据的物理存储顺序是完全一致的.

∙聚簇索引的特点

o表的数据按照索引的数据顺序排列

o每个数据表只能建立一个聚簇索引,并且在第一个建立,往往会在主码所在的列或者最常查询的列上建立局促索引

o索引将占用用户数据库的空间

o适合范围查询

2.非聚簇索引(Non-ClusterIndex)

∙非聚簇索引存储的数据顺序一般和表的物理数据的存储不同.尽管查询速度慢一些,但维护的代价小.而且表中最多可以建立249个给聚簇索引以满足多种查询的要求.

3.惟一索引(UniqueIndex)

∙惟一索引是指索引存储的值必须是惟一的,不允许两行具有相同的索引值(包括NULL).主码索引是当然的惟一索引.

4.复合索引(CompoundIndex)

∙复合索引是指利用表中的多个列值的组合来构建索引值.SQLServer2000规定复合索引最多使用16个列的值进行组合,索引列值最大长度不能朝过900字节,而且这些列必须在同一数据表中.

6.2、设计表间关系:

列出父表与子表的关联索引,指出要建立的表间关系的类型。

1)表SubInformation订阅人信息和Subscribe订阅信息的关系,其中Subscribe订阅信息是外键表,表SubInformation订阅人信息是主键表。

2)Newspapers报刊信息和Subscribe订阅信息的关系,其中Subscribe订阅信息是外键表,Newspapers报刊信息是主键表。

6.3、完整性设计:

列出主要字段完整性的字段名、完整性约束条件;列出记录完整性约束及其约束条件;列出参照完整性表。

表Newspapers

表SubInformation订阅人信息

表Subscribe订阅信息

表Operator操作员

6.4、在有多个用户操作时,考虑用户授权与安全性控制。

只设计了一个用户操作,所以这里没有考虑用户授权与安全性控制。

6.5、处理功能设计(注意:

此时系统未实现,设计结构都是写出或画出的,而不能是系统运行生成的)

6.5.1主控模块设计:

包括系统环境初始化、欢迎画面、用户身份验证、主控表单或菜单、告别画面、系统退出的环境恢复等功能。

要实现以下功能:

1)录入功能:

录入订阅人员信息、报刊基本信息;

2)订阅功能:

订阅人员订阅报刊(并计算出其金额);

3)查询功能:

按人员查询、按报刊查询、按部门查询有关订阅信息,对查询结果能进行预览和打印;

4)统计功能:

按报刊统计、按人员统计、按部门统计,对统计结果能进行预览和打印;

5)操作员管理、权限设置等

6.5.2子模块设计:

按系统业务要求设计各项业务模块和系统管理模块,要能完成系统业务和系统管理功能,总体规模至少要达到5.2.1—5.2.2的要求。

6.6数据库应用系统的实现

6.6.1数据库及其表结构的建立:

建立数据库描述文件及用命令定义并建立其数据库表),注意完整性、索引与永久关联的实现,并附打印出的源模式(CREATETABLE命令)与作为命令执行结果的数据库表结构及其关联图、参照完整性表。

1)源模式(CREATETABLE命令)

1、createtable"system"."dbo"."Newspapers"(

"NID"varchar(30)notnull,

"NName"varchar(20)null,

"Class"varchar(20)null,

"space"varchar(20)null,

"Day"varchar(10)null,

"Price"varchar(10)null,

"introduction"text(2147483647)null,

constraint"PK_Newspapers"primarykey("NID")

go

createuniqueindex"PK_Newspapers"on"system"."dbo"."Newspapers"("NID")

go

2、createtable"system"."dbo"."Operator"(

"OID"varchar(30)notnull,

"Password"varchar(20)null,

constraint"PK_Operator"primarykey("OID")

go

createuniqueindex"PK_Operator"on"system"."dbo"."Operator"("OID")

go

3、createtable"system"."dbo"."SubInformation"(

"SID"varchar(30)notnull,

"Password"varchar(20)null,

"department"varchar(15)null,

"Mail"varchar(30)null,

"SName"varchar(15)null,

"Sex"varchar(10)null,

"Phone"varchar(20)null,

"City"varchar(20)null,

constraint"PK_SubInformation"primarykey("SID")

go

createuniqueindex"PK_SubInformation"on"system"."dbo"."SubInformation"("SID")

go

4、createtable"system"."dbo"."Subscribe"(

"SID"varchar(30)null,

"NID"varchar(30)null,

"Num"intnull,

"Time"varchar(10)null

go

altertable"system"."dbo"."Subscribe"

addconstraint"FK_Subscribe_Newspapers"

foreignkey("NID")

references"system"."dbo"."Newspapers"("NID")

go

altertable"system"."dbo"."Subscribe"

addconstraint"FK_Subscribe_SubInformation"

foreignkey("SID")

references"system"."dbo"."SubInformation"("SID")

go

6.6.2数据输入:

实现5.2.1中的输入程序后,用这些输入程序或系统的追加插入命令录入数据,并打印出的各表的内容。

1)

2)

3)

4)

6.6.3模块实现:

用视窗菜单和/或程序编辑器实现各模块,建议参考教材[2]采用菜单与多表单技术,调试正确后打印实现的系统输出结果。

建议先实现输入模块,再实现其他子模块,然后实现主控模块。

最好建立项目,用项目管理器来管理整个系统。

打印出实现结果(表单、源程序)。

写出实现的经过与体会。

6.7、数据库应用系统运行

6.7.1写出系统操作使用的简要说明。

6.7.2按使用说明运行系统并打印出运行结果(至少有两个查询结果和两个报表输出结果)。

1)打开报刊系统就可以进入主页,主页主要有登录与注册,报刊种类的查询,还有各功能的连接,如下图所示:

2)如果用户要订阅报刊,就要先注册,如下图按要求填基本信息。

3)注册成功后,就可以登录

4)可以在查询那里找到自己想订阅的报刊,如下图:

5)然后单击“详情”的超连接,进入订阅页面:

6)填写了相应信息后,单击“订阅按钮”,就显示您订阅成功并显示订阅的相关信息,和计算出订阅的总金额:

7)订阅完后可以继续订阅,也可以选择退出系统,单击“退出系统”的超连接:

8)后台由管理员来操作,管理员先登录:

9)登录成功后,页面显示有三大功能,先选择“录入报刊信息”:

10)输入相关信息后,单击提交。

可以查询订阅信息,如下所示:

11)可以按员工号,报刊名,部门分别查询,例如选择了“信息部”,单击查询

12)还可以去查询结果预览并打印:

13)第三个功能是统计功能:

14)选择“按报刊统计”

15)选择“部门统计”:

16)还可以对统计结果进行预览和打印

6.7.3系统评价:

采用的有特色的技术与技巧;成功之处与主要特点;系统会改进完善之处和进一步工作的打算。

本系统利用了现在主流的制作动态网站技术JSP,服务器是Tomcat6.0,数据库为SQLServer2000。

JSP的特点

使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。

使用JSP标识或者小脚本来生成页面上的动态内容。

生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。

如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

 

在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。

这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。

 

2.强调可重用的组件

 绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。

开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。

基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。

 3.采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。

JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。

标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

通过开发定制化标识库,JSP技术是可以扩展的。

今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。

这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。

 JSP技术很容易整合到多种应用体系结构中

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教学研究 > 教学反思汇报

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2