《网上书店管理信息系统》数据库课程设计报告样例.docx

上传人:b****2 文档编号:24368278 上传时间:2023-05-26 格式:DOCX 页数:34 大小:481.05KB
下载 相关 举报
《网上书店管理信息系统》数据库课程设计报告样例.docx_第1页
第1页 / 共34页
《网上书店管理信息系统》数据库课程设计报告样例.docx_第2页
第2页 / 共34页
《网上书店管理信息系统》数据库课程设计报告样例.docx_第3页
第3页 / 共34页
《网上书店管理信息系统》数据库课程设计报告样例.docx_第4页
第4页 / 共34页
《网上书店管理信息系统》数据库课程设计报告样例.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

《网上书店管理信息系统》数据库课程设计报告样例.docx

《《网上书店管理信息系统》数据库课程设计报告样例.docx》由会员分享,可在线阅读,更多相关《《网上书店管理信息系统》数据库课程设计报告样例.docx(34页珍藏版)》请在冰豆网上搜索。

《网上书店管理信息系统》数据库课程设计报告样例.docx

《网上书店管理信息系统》数据库课程设计报告样例

学号

 

武汉科技大学城市学院

 

课程设计报告

 

课程设计名称数据库原理与应用

题目

网上书店管理信息系统数据库设计

院系

信息工程学部

专业

电子商务

班级

14级电商1班

姓名

指导教师

石松芳

 

2016

6

16

课程设计评分表

评分标准:

1.学生是否严格遵守课程设计纪律,按照规定时间完成设计任务(占30%)

2.课程设计报告书质量:

(占40%)

(1)是否采用了良好的设计方法,独立完成课程设计。

(2)课程设计各分段的任务是否按时完成及完成的质量。

(3)是否完成课程设计任务书指定的全部要求。

3.课程设计报告书的撰写规范(占30%)

课程设计报告书的撰写规范要求与毕业设计(论文)的要求相同。

教师评分:

1.学生出勤得分:

(A)(B)(C)(D)

2.程序设计得分:

(A)(B)(C)(D)

3.设计报告得分:

(A)(B)(C)(D)

总分:

_________

教师评语:

根据该生课程设计期间表现及提交的课程设计报告,综合成绩为。

 

教师签名:

日期:

年月日

编号:

010

设计题目:

网上书店管理信息系统的设计与实现

1.课程设计教学条件要求:

SQLSERVER2005+POWERDESIGNER15.0

2.课程设计任务

1、主要功能

设计一个网上书店管理信息系统,该系统的用户分别是:

管理员和顾客。

不同的用户拥有不同的权限,各自完成各自的管理功能,不同的用户看到不同的系统功能。

用SQLServer2005创建后台数据库,按照要求完成所有的功能和模块。

系统功能的基本要求:

公共的主要功能模块包括:

(1)用户的注册与登陆

(2)用户个人信息查询与管理

(3)登陆社区交流版块,发布留言、查看留言以及投诉

(4)用户的退出与注销

管理员的主要功能模块包括:

(1)用户管理

(2)书籍信息管理

(3)订单管理

顾客的主要功能模块包括:

(1)个人信息管理

(2)购书信息管理

2、主要数据库表单

(1)管理员基本信息表单

主要字段有:

管理员编号、管理员姓名、管理员密码、管理员联系方式、管理员性别、管理员年龄。

(2)顾客信息表单

主要字段有:

顾客编号、管理员编号、顾客姓名、顾客邮箱、顾客密码、注册时间、密码提示问题、密码答案、登录次数、最后一次登录时间、城市、顾客地址、是否为会员、顾客性别、顾客年龄。

(3)图书信息表单

主要字段有:

书名编号、订单号、书名、作者、详细介绍、市场价、会员价、出版社、ISBN、简介、出版时间。

(4)订单信息表单

主要字段有:

订单号、顾客编码、订单日期、收货人姓名、邮编、收货电话、付款方式、送货方式、总金额。

 

3.课程设计报告书主要内容

1)系统功能需求分析与模块设计。

2)数据库设计:

数据库概念设计。

3)数据库设计:

数据库物理设计。

4.课程设计参考资料

[1]尹志宇数据库原理与应用教程——SQLServer(第二版).清华大学出版社.2015

[2]程炎龙,刘芳.SQLSEVER2008数据库教程.北京:

科学出版社.2012

[3]罗志高.数据库原理与应用教程.北京:

人民邮电出版社.2003

第1章项目开发背景

当今社会正处于信息时代,信息技术已渗透到社会生活的各个领域,特别是各行业的管理领域,智能化信息处理已是提高效率、规范管理、客观审查的最有效途径。

信息数据的管理作为一个公司的基层管理工作,是公司对员工工作管理的基本依据。

1.1项目开发背景

近年来,随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。

目前图书管理存在的问题:

 

1、检索速度慢、效率低 

因为图书馆的藏书种类多、数量多,将藏书准确地分门别类,快速检索,手工进行非常困难往往是终于查到了书的信息,馆中没有此书或已被别人借走。

图书馆的规模越大,这个问题越突出。

 

2、借书、还书工作量大 借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、 还书登记、实存图书的更新以及借出图书超期、遗失等的处理,其工作量之大,往 往是人工操作所难以胜任的。

而且经常会出现这样那样的差错。

 

3、图书统计工作难、藏书更新不能及时完成。

 

图书馆的图书应根据科学技术的发展和教学工作的需要及时添加和更新,然而由于藏书数量及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计工作难以及时完成,藏书的更新也就很难有针对性地进行,藏书的知识结构得不到良好地控制。

 

由上可知,我们有必要对图书管理实行信息化,让系统去帮助我们完成管理工作,且这项工作在技术上、经济上与社会等其它因素上都是可行的。

1.2项目特点

此系统具有如下5个特点:

Ø灵活性:

本系统可以根据不同的登录用户,自动识出用户的身份,并引导和呈现出该用户可以进行的操作。

Ø简单便捷的用户操作:

功能模块的操作采用简单易行的使用原则,用户可以很容易理解某个操作的含义并很容易上手。

Ø友好的用户界面:

系统的操作界面简单、美观、大方,能够给用户一种简洁舒适的感觉。

Ø跨浏览器兼容性:

系统支持多种主流浏览器,用户可以根据自己的喜好选择喜欢的浏览器来访问本系统。

Ø多用户同时在线:

本系统以B/S结构构建,支持多人同时在线,多个不同的用户可以同时在系统中进行操作。

第2章项目需求分析

一个设计良好的项目结构必备的条件是:

易维护性、可扩展性、当遇到需求变更或功能变更时能够以最低的代码成本响应变更。

这就要求整个软件在设计上做好周密、全方位的设计

2.1系统模块介绍

2.2系统角色分工

本系统主要分为两种角色:

管理员、顾客。

各角色进入系统后,根据权限可以操作的模块如下:

管理员:

主要完成对所管辖的所有用户信息、订单信息、书籍信息的录入与管理,并完成系统各模块基本数据的初始化工作,包括定义和录入用户及其书籍订单信息、设置用户、书籍、订单信息管理功能。

顾客:

主要完成订单的申请与提交,以及个人信息数据的查询。

2.3功能需求分析

本系统按照角色身份功能可以分为公共功能、管理员功能、顾客功能三大类。

2.3.1公共功能

公共功能为使用本系统的所有用户都具有的功能。

其中包括登录和个人信息。

2.3.1.1登录

(1)用户登录

Ø信息来源:

所有用户

Ø信息要求:

用户登录系统及其身份验证

Ø事件信息系统处理:

点击登录按钮后,验证用户名和密码是否允许登录。

对于用户名或密码无效的用户,弹出提示“用户名或密码错误!

”,并不允许登录;对于通过验证的用户,允许用户登录,并根据用户的不同身份跳转到相应的默认页面。

Ø信息处理结果:

对于系统管理员,默认跳转到“用户设置管理”;对于用户,默认跳转到“我的个人信息”。

2.3.1.2用户个人信息管理

Ø信息来源:

所有用户

Ø信息要求:

当前登录的用户可以修改登录密码等其他个人信息

Ø事件信息系统处理:

点击保存按钮,保存用户修改的手机号码信息。

如果“新密码”和“确认密码”都为空,则可以提交保存,且保存时不用修改登录密码;如果只填写了其中一项,则需给出提示——另一项也必须填写,此时不能提交保存;如果这两项都填写了,则还需要验证两次输入的密码是否一致,如果不一致,给出提示,且不能提交保存;只有两次输入密码相同时,才允许提交保存,此时将修改当前用户的登录密码为本次新设置的密码。

Ø信息处理结果:

将用户修改的登录密码等个人信息更新到数据库。

2.3.1.3退出

Ø信息来源:

所有用户

Ø信息要求:

退出系统

Ø事件信息系统处理:

点击退出按钮,注销当前用户的登录,并跳转到登录页面。

Ø信息处理结果:

注销当前登录用户信息,跳转到登录页面。

2.3.2管理员功能

系统管理员的主要功能是对系统的基础数据进行维护,保证系统的正常运行。

其功能包括用户信息管理、书籍信息管理、订单管理。

2.3.2.1用户管理

(1)查询用户

Ø信息来源:

管理员

Ø信息要求:

以表格形式显示分页的用户的数据

Ø事件信息系统处理:

点击查询按钮时,根据所输入的查询条件对用户数据进行联合查询,并将查询结果数据以分页的形式显示在表格中。

列表中列头标题为超链接,点击可以实现按照对应的字段对数据进行升序/降序排列切换显示。

Ø信息处理结果:

查询出所有符合条件的非管理员用户(即所有顾客),并以表格形式分页显示。

(2)添加用户

Ø信息来源:

管理员

Ø信息要求:

实现用户的添加功能

Ø事件信息系统处理:

1.用户类型的选项为“顾客”。

2.点击保存按钮时,对用户信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存。

提交保存时,需要首先对该用户ID进行验证是否已经存在,如果已经存在则提示“该用户ID已经存在!

”,并不允许保存;如果该用户ID不存在,则保存用户信息,并根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的用户信息保存到数据库,完成用户的添加。

(3)修改用户

Ø信息来源:

管理员

Ø信息要求:

对系统中现有用户的信息进行修改

Ø事件信息系统处理:

1.页面打开时,自动加载出该用户的信息,其中用户ID为只读不能修改。

2.点击保存按钮时,对用户信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存,并根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的用户信息更新到数据库,完成用户信息的修改。

(4)删除用户

Ø信息来源:

管理员

Ø信息要求:

将所选择的用户从系统中删除

Ø事件信息系统处理:

点击删除按钮时,对用户的删除操作弹出确认提示“确定要删除选择的用户吗?

”如果选择“否”,则不做任何操作;如果选择“是”,则删除所选择的所有用户数据,并根据删除结果给出相应的提示。

Ø信息处理结果:

将用户信息从数据库中删除。

2.3.2.2书籍信息管理

(1)查询图书信息

Ø信息来源:

管理员

Ø信息要求:

以表格形式显示分页的图书信息的数据

Ø事件信息系统处理:

页面打开时,自动加载出所有图书的信息,而管理员可以根据此页面查询书籍的信息和销售情况。

Ø信息处理结果:

查询出所有符合条件的图书数据,并以表格形式分页显示。

(2)添加图书信息

Ø信息来源:

管理员

Ø信息要求:

实现图书信息的添加功能

Ø事件信息系统处理:

点击保存按钮时,对图书信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存。

提交保存时,需要首先对该图书名称进行验证是否已经存在,如果已经存在则提示“图书名称已经存在!

”,并不允许保存;如果该图书名称不存在,则保存图书信息,并根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的图书信息保存到数据库,完成图书的添加。

(3)修改图书信息

Ø信息来源:

管理员

Ø信息要求:

对图书信息进行修改

Ø事件信息系统处理:

1.页面打开时,自动加载出图书信息。

2.点击保存按钮时,对图书信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

3.提交保存时,如果修改了图书名称,则需要对新的图书名称进行验证是否已经存在,如果存在则提示“图书名称已经存在!

”,并不允许保存。

保存之后,根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的图书信息更新到数据库,完成图书信息的修改。

(4)删除图书信息

Ø信息来源:

管理员

Ø信息要求:

将所选图书从数据库中删除

Ø事件信息系统处理:

点击删除按钮时,对用户的删除操作弹出确认提示“确定要删除该图书信息吗?

”如果选择“否”,则不做任何操作;如果选择“是”,则删除所选择的图书信息的数据,并根据删除结果给出相应的提示。

Ø信息处理结果:

将该图书从数据库中删除。

2.3.2.3订单管理

(1)查询订单信息

Ø信息来源:

所有顾客

Ø信息要求:

以表格形式显示分页的订单信息的数据

Ø事件信息系统处理:

1.加载订单列表时,如果该订单下不存在任何顾客,则最后一列操作列中显示删除按钮;如果该订单下存在顾客,则不显示删除按钮。

2.点击查询按钮时,根据所输入的查询条件对订单数据进行联合查询,并将查询结果数据以分页的形式显示在表格中。

Ø信息处理结果:

查询出所有符合条件的订单数据,并以表格形式分页显示。

(2)添加订单信息

Ø信息来源:

所有顾客

Ø信息要求:

实现订单信息的添加功能

Ø事件信息系统处理:

点击保存按钮时,对订单信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存。

提交保存时,需要首先对该订单名称进行验证是否已经存在,如果已经存在则提示“订单名称已经存在!

”,并不允许保存;如果该订单名称不存在,则保存订单信息,并根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的订单信息保存到数据库,完成订单的添加。

(3)修改订单信息

Ø信息来源:

所有顾客

Ø信息要求:

对订单信息进行修改

Ø事件信息系统处理:

1.页面打开时,自动加载出订单信息。

2.点击保存按钮时,对订单信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

3.提交保存时,如果修改了订单名称,则需要对新的订单名称进行验证是否已经存在,如果存在则提示“订单名称已经存在!

”,并不允许保存。

保存之后,根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的订单信息更新到数据库,完成订单信息的修改。

(4)删除订单信息

Ø信息来源:

所有顾客

Ø信息要求:

将所选订单从数据库中删除

Ø事件信息系统处理:

点击删除按钮时,对顾客用户的删除操作弹出确认提示“确定要删除该订单信息吗?

”如果选择“否”,则不做任何操作;如果选择“是”,则删除所选择的订单信息的数据,并根据删除结果给出相应的提示。

Ø信息处理结果:

将该订单从数据库中删除。

2.3.3顾客功能

2.3.3.1个人信息管理

(1)查看个人信息

Ø信息来源:

顾客

Ø信息要求:

以列表形式显示分页的用户的数据

Ø事件信息系统处理:

1.页面加载后,以分页的形式显示当前用户所管理的所有基本信息,列表中列头标题为超链接,点击可以实现按照对应的字段对数据进行升序/降序排列切换显示。

2.点击“查看”打开个人信息查看界面,可以选择所要查看的信息分类并查询该用户在所选分类下的信息。

3.顾客用户个人信息以列表形式展示,详情见“顾客功能——我的个人信息——查看资料信息(列表)”。

Ø信息处理结果:

显示该顾客在所选内容分类下的信息状态数据。

(2)添加个人信息

Ø信息来源:

顾客

Ø信息要求:

实现顾客用户的添加功能

Ø事件信息系统处理:

1.用户类型的选项为“顾客”。

2.点击保存按钮时,对个人信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存。

提交保存时,需要首先对该用户ID进行验证是否已经存在,如果已经存在则提示“该用户ID已经存在!

”,并不允许保存;如果该用户ID不存在,则保存用户信息,并根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的个人用户信息保存到数据库,完成个人用户的添加。

(3)修改个人信息

Ø信息来源:

顾客

Ø信息要求:

对系统中现有个人信息进行修改

Ø事件信息系统处理:

1.页面打开时,自动加载出顾客的个人信息,其中ID为只读不能修改。

2.点击保存按钮时,对个人信息中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存,并根据保存结果给出相应的提示。

Ø信息处理结果:

将填写的个人信息更新到数据库,完成个人信息的修改。

(4)删除个人信息

Ø信息来源:

顾客

Ø信息要求:

将所选择的个人信息从系统中删除

Ø事件信息系统处理:

点击删除按钮时,对个人信息的删除操作弹出确认提示“确定要删除选择的个人信息吗?

”如果选择“否”,则不做任何操作;如果选择“是”,则删除所选择的所有顾客用户数据,并根据删除结果给出相应的提示。

Ø信息处理结果:

将个人信息从数据库中删除。

2.3.3.2购书信息管理

(1)查询购书信息

Ø信息来源:

顾客

Ø信息要求:

以表格形式显示当前发起的所有订单申请

Ø事件信息系统处理:

页面加载后,以分页的形式显示当前用户发起的所有购书信息记录;列表中列头标题为超链接,点击可以实现按照对应的字段对数据进行升序/降序排列切换显示;点击查询按钮时,根据所输入的查询条件对请假单数据进行联合查询,并将查询结果数据以分页的形式显示在表格中;最后一列中,如果该订单的状态为“待审批”,则显示为编辑和删除按钮,允许对订单进行编辑和删除。

如果订单状态为“已提交”,则显示为查看超链接,只允许查看订单的信息。

Ø信息处理结果:

查询出所有符合条件的书籍申请数据,并以表格形式分页显示。

(2)新增购书信息

Ø信息来源:

顾客

Ø信息要求:

发起图书订单

Ø事件信息系统处理:

点击确定按钮时,对订单中的必填项进行验证,如果没有填写,则进行相应的提示,并不允许提交保存。

如果必填项都已填写,则可以提交保存。

提交保存时,需要首先验证当前填写的订单是否已经存在,以及是否与其他订单中的下单时间产生冲突(也就是与其他下单的时间存在交集)。

如果存在冲突则提示在该时间段内已经存在下单记录,并不允许保存;如果不存在冲突,则保存订单信息,且将该订单的状态设置为“待审批”,并根据保存结果给出相应的提示。

Ø信息处理结果:

将发起提交审批的订单信息保存到数据库。

(3)修改订单信息

Ø信息来源:

顾客

Ø信息要求:

修改已经发起但未提交的订单信息

Ø事件信息系统处理:

点击确定按钮时,需要对订单中的必填项进行验证。

提交保存时,如果修改了订单内容和时间,要对新填写的订单时间和内容和内容进行验证,是否与其他订单中的时间和内容产生冲突。

如果存在冲突则提示在该时间段内已经存在订单记录,并不允许修改。

保存修改后的订单信息,并根据保存结果给出相应的提示。

Ø信息处理结果:

将修改后的订单信息更新到数据库,完成订单的修改。

(4)删除订单信息

Ø信息来源:

顾客

Ø信息要求:

删除还未审批的订单

Ø事件信息系统处理:

点击删除按钮时,对用户的删除操作弹出确认提示“确定要删除该订单申请吗?

”如果选择“否”,则不做任何操作;如果选择“是”,则删除所选择的订单申请,并根据删除结果给出相应的提示。

Ø信息处理结果:

将还未审批的订单从数据库中删除。

第3章数据库设计

3.1数据库概念设计

根据概念设计的步骤,先产生局部E-R图,然后再将局部E-R图合并成初步的E-R图,最后进行优化,得到全局E-R图。

根据网上书店管理信息系统的功能模块进行划分和设计局部E-R图,根据需求建立相关联系。

3.1.1管理员基本信息管理E-R图

在管理员信息管理功能模块中,包括管理员的一些基本信息:

管理员编号、管理员姓名、管理员密码、管理员联系方式、管理员性别、管理员年龄,其E-R图如图所示。

图3-1管理员基本信息管理E-R图

3.1.2.顾客基本信息管理E-R图

在顾客基本信息管理功能模块中,包括顾客编码、顾客姓名、顾客邮箱、顾客密码、注册时间、密码提示问题、密码答案、登陆次数、最后一次登录时间、城市、顾客地址、是否为会员、顾客性别、顾客年龄。

管理员可根据这些信息给顾客分配账号,其E-R图如图所示。

图3-2顾客基本信息管理E-R图

3.1.3.订单信息E-R图

在订单信息管理功能模块中,包括订单的一些基本信息:

订单号、订单日期、收货人姓名、收货地址、邮编、收货电话、付款方式、送货方式、总金额。

管理员可根据这些信息给顾客分配订单账号其E-R图如图所示。

图3-3订单信息E-R图

3.1.4.图书信息E-R图

在图书信息管理模块中,包括各种图书的来源与去向信息:

书名编号、书名、作者、详细介绍、市场价、会员价、出版社、ISBN、简介、出版时间,其E-R图如图所示。

图3-4图书信息E-R图

3.1.5全局E-R图

将各个局部E-R图汇集成一个整体的E-R图,消除冗余和冲突,进行优化后产生全局E-R图,如图所示。

图3-5全局CDM图

3.2物理结构设计

3.2.1生成物理数据模型(PDM)

将概念数据模型生成物理数据模型。

生成后的图如图所示。

图3-6完善后的物理数据模型(PDM)

3.2.2创建数据库

创建数据库表的部分代码语句如下:

/*==============================================================*/

/*DBMSname:

MicrosoftSQLServer2005*/

/*Createdon:

2016-6-1615:

17:

03*/

/*==============================================================*/

 

ifexists(select1

fromsysobjects

whereid=object_id('admin')

andtype='U')

droptableadmin

go

ifexists(select1

fromsysindexes

whereid=object_id('"order"')

andname='属于_FK'

andindid>0

andindid<255)

dropindex"order".属于_FK

go

ifexists(select1

fromsysobjects

whereid=object_id('"order"')

andtype='U')

droptable"order"

go

ifexists(select1

fromsysindexes

whereid=object_id('product')

andname='整理_FK'

andindid>0

andindid<255)

dropindexproduct.整理_FK

go

ifexists(select1

fromsysindexes

whereid=object_id('product')

andname='订购_FK'

andindid>0

andindid<255)

dropindexproduct.订购_FK

go

ifexists(select1

fromsysobjects

whereid=object_id('product')

andtype=

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

当前位置:首页 > 解决方案

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1