网上图书销售系统数据库课程设计报告.docx
《网上图书销售系统数据库课程设计报告.docx》由会员分享,可在线阅读,更多相关《网上图书销售系统数据库课程设计报告.docx(29页珍藏版)》请在冰豆网上搜索。
网上图书销售系统数据库课程设计报告
网上图书销售系统_数据库课程设计报告
数学与计算机学院
课程设计说明书
课程名称:
数据库-课程设计
课程代码:
题目:
网上图书销售系统-实现前台
年级/专业/班:
学生姓名:
学 号:
开始时间:
年6月9日
完成时间:
年6月21日
课程设计成绩:
学习态度及平时成绩(30)
技术水平与实际能力(20)
创新(5)
说明书撰写质量(45)
总分(100)
指导教师签名:
年月日
摘要
随着计算机的普及书店规模的不断扩大,使图书销售管理成为书店管理中的一个重要课题。
经过图书销售管理系统能够解决书店管理中遇到的各种问题。
本系统分析了市场需求和实际需要,利用VC++连接SQL数据库的方式,主要实现了书店的网上图书销售管理,该系统具有处理图书录入、图书销售、销售统计、查询库存等功能。
关键词:
图书;销售;库存
1引言
传统的图书销售管理方法,都是经过人工统计和计算的管理方式进行的。
这样的管理方法不但费时费力,也容易产生计算上的错误和疏漏;计算机技术的全面普及,打破了书店管理的传统管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序的、全面的对图书销售和库存进行管理。
网上图书销售系统能够完成书店的日常管理,如图书录入、图书销售、销售统计、查询库存等功能,迅速准确地对已售图书和剩余库存进行统计和汇总工作,大大提高了书店的管理效率和准确性。
2需求分析
2.1国内外研究的现状
在现代化的书店中,对图书销售工作运用现代化技术进行管理,是提高工作效率的有效手段。
图书销售管理是书店日常工作中非常重要的一个方面,越来越受到书店经营者的重视。
经过计算机管理系统对图书销售进行全面的统计与管理,全面解决了书店经营过程中所遇到的各种问题,而且克服了传统管理方式中的易出错等问题。
图书销售管理系统成为书店管理的首选管理工具。
2.2功能需求
2.2.1待开发软件的功能需求
本系统是根据书店的实际需求而开发的,要求稳定、可靠的实现图书销售的自动化管理,经过本系统能够达到以下目标:
1.图书录入,包括图书的基本信息,如分类、进价、售价、作者等。
2.图书销售,包括图书的售价、折扣、销售日期,并实现对库存量的修改。
3.销售统计,包括按图书类型、书名、作者、出版社等进行统计。
4.查询库存,对指定的某本图书剩余库存量进行查询。
5.售完图书查询,对已售完图书进行查询。
2.2.2待开发软件的功能
按照用户需求,要满足以上功能,我设计出了图书销售管理系统的系统功能图,如图2.1所示。
图书销售管理系统
图书录入
查询库存
图书销售
销售统计
售完图书查询
图2.1图书销售管理系统的系统功能图
综合系统要求,对图2.1所示的系统功能解释如下:
图书录入,包括图书的基本信息,如分类、进价、售价、作者等。
图书销售,包括图书的售价、折扣、销售日期,并实现对库存量的修改。
销售统计,包括按图书类型、书名、作者、出版社等进行统计。
查询库存,对指定的某本图书剩余库存量进行查询。
售完图书查询,对已售完图书进行查询。
经过以上分析,能够得到仓库管理系统的数据流图,如图2.2所示。
管理员
图书信息
处理
图书管理
反馈信息
图书信息
反馈信息
记录数据
数据库
图2.2图书管理系统的数据流图
2.3数据描述
2.3.1数据库概要说明
数据库中包括管理员信息表、图书基本信息表、图书类型表、图书销售记录表等4个数据表。
图2.3所示的即为本系统中数据库中的数据表结构图,该数据表结构图包含系统所有数据表。
能够清晰地反应数据库信息。
图2.3数据表结构图
2.3.2主要数据表的结构
表2.1Pwd(管理员信息表)
字段名
数据类型
字段大小
描述
ID
int
4
管理员帐号
Password
nvarchar
50r
密码
表2.2BookInfo(图书基本信息表)
字段名
数据类型
字段大小
描述
BookID
int
4
图书编号
BookName
nvarchar
50
图书名称
CategoryID
int
4
图书类型编号
Author
nvarchar
50
作者
Publisher
nvarchar
50
出版社
PublishDate
smalldatetime
4
出版日期
Purchase
float
8
进价
Price
float
8
售价
Stock
int
4
库存本数
Discount
int
4
折扣
BarCode
nvarchar
50
条形码
表2.3BookCategory(图书类型表)
字段名
数据类型
长度
描述
CategoryID
int
4
图书类型编号
CategoryName
nvarchar
8
图书类型名称
表2.4BookSale(图书销售记录表)
字段名
数据类型
长度
描述
ID
int
4
销售记录编号
BookID
int
4
图书编号
SalePrice
float
8
实际售价
SaleDate
smalldatetime
4
销售日期
2.4数据库描述
本软件采用SQL数据库。
3概要设计
本系统是根据书店的实际需求而开发的,完全能够帮助书店实现高效、准确的图书销售自动化管理。
在分析阶段,我们已经提出了系统的结构和数据字典。
本节我们将对系统的使用环境作简要介绍,并对该系统作概要设计。
3.1系统运行环境
P4机
Windows操作系统
VisualC++6.0
3.2系统功能模块设计
在前面系统功能分析的基础上,结合VisualC++程序编制的特点,得到如图3.1所示的系统功能模块图。
图书销售管理系统
图书录入模块(M2)
查询库存模块(M5)
图书销售模块(M3)
销售统计模块(M4)
售完图书查询模块(M6)
管理员登录模块(M1)
图3.1图书销售管理系统功能模块图
各模块功能分配如下:
(1)用户登陆功能:
管理员登陆模块(M1)。
(2)图书录入功能:
图书录入模块(M2)。
(3)图书销售功能:
图书销售模块(M3)。
(4)销售统计功能:
销售统计模块(M4)。
(5)查询图书库存功能:
查询库存模块(M5)。
(6)售完图书查询功能:
售完图书查询模块(M6)。
3.3系统处理流程
(1)系统启动,进入身份验证。
(2)初始化系统,导入数据库。
(3)录入图书信息。
(4)图书销售。
(5)统计图书销售信息。
(6)查询图书库存信息。
(7)查询已售完图书信息。
(8)退出系统。
3.4接口设计
3.4.1外部接口
(1)用户界面
采用图形用户界面,包含菜单、按钮、对话框等元素。
(2)软件接口
软件运行于VisualC++6.0平台上。
(3)硬件接口
运行于PC机上。
3.4.2内部接口
(1)用户登陆模块(M1):
由相应事件驱动消息激活,完成用户登陆功能,之后进入消息循环状态。
(2)图书销售模块(M3):
由相应事件驱动消息激活,完成图书销售功能,之后进入消息循环状态。
(3)销售统计模块(M4):
由相应事件驱动消息激活,完成销售统计功能,之后进入消息循环状态。
(4)查询库存模块(M5):
由相应事件驱动消息激活,完成查询库存功能,之后进入消息循环状态。
(5)售完图书查询模块(M6):
由相应事件驱动消息激活,完成售完图书查询功能,之后进入消息循环状态。
4详细设计
该系统采用VC++6.0中的MFC连接SQL数据库的方式,使用图形用户界面,主要实现图书录入、图书销售等功能。
下面具体对各模块进行介绍。
4.1登录模块及主界面
在登录界面(如图4.1所示)中输入用户名和密码,登录成功后进入主界面。
登陆框流程图如图4.2所示,系统主界面如图4.3所示,单击某个按钮就能弹出某个功能的界面。
图4.1系统登录界面
输入用户名
开始
验证密码是否正确
输入密码
登录成功进入主界面
结束
是
否
选择帐号类型
图4.2登录模块流程图
图4.3系统主界面
4.2图书录入模块
4.2.1实现目标
添加图书信息,图书录入对话框的设计如图4.4所示。
”保存”按钮对应的方法为RAddBookDlg:
:
OnSave(),流程图如图4.5所示。
图4.4图书录入对话框
开始
结束
输入图书基本信息
判断输入是否正确且完整
添加该信息到关联表并写入数据库
是
否
图4.5RAddBookDlg:
:
OnSave()方法的流程图
4.2.2设计步骤
(1)向项目中添加一个新Dialog资源,资源ID为IDD_ADDBOOK。
在IDD_YGTJK对话框资源中单击鼠标右键,执行弹出快捷菜单的”Properties”菜单命令,打开”DialogProperties”对话框。
在”DialogProperties”对话框中选择General选项卡,更改其”Caption”文本框内容为”图书信息录入”。
(2)从Controls面板上向Dialog资源中添加所需控件,更改资源的属性,并为资源设置相对应的变量,如表4.1所示。
表4.1图书录入Dialog资源属性设置
ID
Properties
MemberVariables
Type
Member
IDC_BK_CATEGORY
默认
文本
CategoryName
IDC_BK_NAME
默认
文本
BookName
IDC_BK_AUTHOR
默认
文本
Author
IDC_BK_PUBLISHER
默认
文本
Publisher
IDC_BK_DATE
默认
日期/时间
PublishDate
IDC_BK_PURCHASE
默认
数字
Purchase
IDC_BK_PRICE
默认
数字
Price
IDC_BK_PAYOFF
默认
数字
Price
IDC_BK_STOCK
默认
数字
Stock
IDC_BK_BARCODE
默认
文本
BarCode
IDC_BK_DISCOUNT
默认
数字
Discount
IDC_RESET
Caption重填
IDC_SAVE
Caption添加
IDCANCEL
Caption退出
4.2.3代码分析
(1)打开ClassWizard窗口,添加在OnInitDialog成员函数,向OnInitDialog添加代码如下:
BOOLRAddBookDlg:
:
OnInitDialog()
{
CDialog:
:
OnInitDialog();
//TODO:
Addextrainitializationhere
GetBookGategory();
returnTRUE;//returnTRUEunlessyousetthefocustoacontrol
//EXCEPTION:
OCXPropertyPagesshouldreturnFALSE
}
(2)当用户单击”