图书销售管理系统数据库设计Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】数据库系统概论课程设计报告2011年 05月 28 日目录引言 (1)第一章系统分析 (1)功能需求 (2)待开发系统功能 (2)第二章系统功能概要设计 (2)系统主要功能模块设计 (2)系统处理流程分析 (3)系统接口设计 (4)外部接口 (4)内部接口 (5)第三章系统数据库设计 (5)系统数据库分析 (5)系统关系表 (6)数据字典 (6)数据项 (6)数据结构 (7)数据流表 (8)数据存储 (8)处理过程 (9)第四章概念结构设计 (9)用户管理模块 (9)图书管理模块 (10)图书销售管理模块 (11)查询管理模块 (12)报表查询管理模块 (13)数据管理模块 (14)图书销售管理系统E-R图 (15)第五章逻辑结构设计 (16)与系统E-R图对应的关系模式 (16)试题所对应的关系模式 (16)联系所对应的关系模式 (16)关系模式优化处理 (17)第六章物理结构设计 (18)系统数据处理特点 (18)系统数据存储选择 (18)第七章数据库的实施和维护 (18)数据库的实施 (19)致谢 (20)引言随着计算机的普及书店规模的不断扩大,传统的图书销售管理方法,都是通过人工统计和计算的管理方式进行的。
这样的管理方法不但费时费力,也容易产生计算上的错误和疏漏;计算机技术的全面普及,打破了书店管理的传统管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序的、全面的对图书销售和库存进行管理。
通过图书销售管理系统可以解决书店管理中遇到的各种问题,该图书销售管理系统分析了市场需求和实际需要,利用Microsoft Visual Studio 2008连接SQL数据库的方式,实现了书店的图书销售等一系列管理,该系统具有处理图书录入、图书销售及管理、图书查询、报表查询等功能。
第一章系统分析功能需求:本系统是根据书店的实际需求而开发的,要求稳定、可靠的实现图书销售的自动化管理,通过本系统可以达到以下目标:a、用户管理:对系统所有用户的相关信息进行管理。
b、图书管理:对图书信息进行添加以及编辑,对图书基本信息的录入及编辑包括图书类别、图书进价、图书售价、图书出版社、图书折扣、图书作者等。
c、图书销售管理:对图书的销售信息进行动态添加并实现对图书库存量的动态修改等,所添加的图书销售信息包括图书的售价、折扣、销售日期。
d、查询管理:用户根据实际需要对图书、图书销售、图书库存等信息分类查询。
e、报表查询:系统用户可以通过对时间段的选择来查看该段时间内图书的销售情况,以便于做出更为合理的销售计划、提高效益。
f、数据管理:为了防止系统用户的误操作,用户可以根据自己的需要对图书信息、销售数据等进行备份等操作。
待开发软件功能:通过以上的系统目标分析,根据以上系统所要满足的功能,设计出了图书销售管理系统的主要功能模块图,如图所示。
图图书销售管理系统的系统功能图第二章系统功能概要设计该图书销售管理系统是根据书店的情况结合实际需求而开发的,完全能够帮助书店实现高效、准确的图书销售自动化管理。
系统主要功能模块设计:结合前面对系统功能的分析,以及Microsoft Visual Studio 2008开发环境的特点,得到如下图所示的系统功能模块图:图图书销售管理系统主要功能模块图系统各个模块功能分配如下:(1)用户管理模块:系统用户根据权限进行系统登录并对相关用户信息进行管理;(2)图书管理模块:对图书的各种信息、类别进行录入、管理;(3)图书销售管理模块:对图书的各种销售信息进行录入、管理;(4)查询管理模块:对各种信息进行统计、查询;(5)报表查询管理模块:对销售完的图书进行统计、查询;(6)数据管理功能模块:对系统相关数据进行操作。
系统处理流程分析:(1)系统启动,用户根据自己的身份选择登录用户类型并进行身份验证(根据用户输入的登录信息与数据库中的信息进行比对);(2)登录成功后,进入系统主界面;(3)系统初始化,导入数据库;(4)登录成功的用户根据自己的权限级别进行相应的功能选择并进行操作;(5)退出系统。
系统具体处理流程如图所示:系统接口设计:外部接口(1) 用户界面:采用GUI图形用户界面,含菜单、图片控件、Button按钮、文本框等元素。
(2) 软件接口:系统运行于Microsoft Visual Studio 2008 开发环境下。
(3) 硬件接口:运行于PC机上。
内部接口(1)用户管理模块(M1):由相应事件驱动消息激活,完成用户登陆功能,之后进入消息循环状态,对相关用户信息进行操作。
(2)图书管理模块:由相应事件驱动消息激活,完成图书信息管理,之后进入消息循环状态。
(3)图书销售管理模块(M3):由相应事件驱动消息激活,完成图书销售以及销售信息管理,之后进入消息循环状态。
(4)查询管理模块(M4):由相应事件驱动消息激活,完成对图书相关信息的查询功能,之后进入消息循环状态。
(5)报表查询管理模块(M5):由相应事件驱动消息激活,完成图书销售报表查询,之后进入消息循环状态。
(6)数据管理模块(M6):由相应事件驱动消息激活,对系统相关数据进行操作,之后进入消息循环状态。
第三章系统数据库设计系统数据库分析:通过对图书销售管理系统的功能分析我们已知道,图书销售管理系统具有处理图书录入、图书销售、销售统计、查询库存等功能,通过该系统能够帮助用户迅速准确的对已销售图书和剩余库存图书进行统计和销售数据的汇总工作,以此来提高书店的管理效率以及实际操作过程中的准确性。
因此,在该系统的后台就必须得有一个强大的数据库作为其功能的支持。
SQL(Structured Query Language)作为一门结构化查询语言,是关系数据库的标准语言,也是一个通用的、功能极强的关系数据库语言。
当前,几乎所有关系数据库管理系统软件都支持SQL,而许多的软件厂商也对SQL的基本命令集进行了不同程度的扩充和修改,使用户在对其功能的使用上更加的容易。
所以,在图书销售管理系统的数据库使用上就选择SQL数据库。
系统关系表:在对图书销售管理系统的功能模块进行了设计的基础上,要使其能够稳定、可靠的实现图书销售的自动化管理,就必须建立关系型数据表,具体关系表如下:(1)用户信息(Users):UserID(用户账号)、Password(用户密码)、Quanxian(用户权限);(2) 图书信息(BookInfo):BookID(图书编号)、BookName(图书名称)、CategoryID(图书类别编号)、Author(图书作者)、Publisher(图书出版社)、PublisherDate(图书出版日期)、Purchase(图书进价)、Price(图书售价)、StockNumber(图书库存数量)、Discount(图书折扣)、Barcode(图书条形码);(3) 图书类别信息(CategoryInfo):CategoryID(图书类别编号)、CategoryName(图书类别名);(4)图书销售信息(SakeDetails):SaleID(销售编号)、BookID(图书编号)、RealSalePrice(销售价格)、SaleNuber(销售数量)、SaleDate(销售日期)。
在系统的实际运行中,使用系统的有三个权限级别的用户,分别是顾客、一般用户(员工)、数据库管理员(DBA),作为游客仅能进入系统查看有限的图书信息。
因此,作为顾客在数据库中没有相关信息记录。
数据库管理员对图书销售管理系统拥有绝对的控制权,而一般用户对系统的控制权有限。
数据库管理员能够动态的添加、删除一般用户且能够根据实际情况对一般用户的信息进行修改。
在数据库管理员登录的系统的同时,一般用户不能进入到系统;相反,在一般用户进入系统后,数据库管理员也不能进入系统。
数据字典:根据系统需求分析,利用表格方式设计出了以下数据字典:数据项数据字典的数据项如下表所示:数据结构数据字典的数据结构如下表:数据流表数据字典的数据流如下表所示:数据存储数据字典的数据存储如下表所示:处理过程数据字典的处理过程如下表所示:第四章概念结构设计经过前面的系统功能需求分析,确定了该图书销售管理系统由用户管理、图书管理、图书类别、查询管理以及销售报表等几大功能模块组成。
下面给出各个功能模块的分析及分E-R图的设计及对其进行的各项调整。
经过小组成员对图书销售管理系统的功能分析得出,该系统对用户的设置类型为两种,一种是系统管理员(也即数据库管理员DBA),另一种用户即图书销售管理系统的一般用户(操作员),该图书销售系统的管理员为一个,一般用户(操作员)为多个。
2种用户对系统的功能控制权限不同,具体如下:A、管理员:对系统的一般用户进行信息添加、删除,一个系统管理员可以对多个一般用户的信息进行管理;对图书信息进行登记、修改,对图书类别信息进行添加、修改,对图书的各种信息进行查询以及销售报表的查询。
B、操作员:对自己的用户信息进行修改、对图书的销售进行管理、登记,对图书肚饿各种信息进行查询。
图书管理模块的设计是对图书的各种相关信息以及图书的类别信息进行添加、修改等操作,图书信息的添加有系统管理员操作。
A、图书信息:每一种图书对应着一个图书类别,图书与图书类别之间是多对一的关系。
B、图书类别信息:一种图书类别由多种不同的图书,图书类别与图书之间是一对多的关系。
C、一个管理员可以添加多种图书,图书与管理员之间是多对一的关系,;一个管理员可以添加多种图书类别信息,图书类别与管理员之间是多对一的关系。
图图书管理E-R图图书销售管理模块:图书销售管理模块的功能比较单一,其主要功能是让一般用户(操作员)实现对图书销售信息的动态添加,以便于系统用户根据图书的销售情况对图书的销售进行预测,更好的做好图书销售的调整计划。
A、图书销售信息:每本图书的销售只能由一个操作员来完成,不同图书的销售可以由不同的操作员来完成添加,图书的销售与操作员之间是多对多的关系。
B、一般用户(操作员):每个操作员可以销售多本不同的图书,操作员与图书销售之间是多对多的关系。
图图书销售管理模块E-R图查询管理模块:查询管理模块的设计使得系统管理员能够动态的根据需要查询各类图书信息以及图书库存信息,能够更好的方便用户对图书做出管理,提高工作效率。
该管理模块分为三个部分即:图书查询、分类查询、库存查询。
图书查询是根据用户输入的图书名或者图书条形码查找图书的相关信息;分类查询是根据用户输入的图书类别名查找该类别下的所有图书;图书库存查询是根据用户输入的图书编号查找该编号对应的图书名以及图书数量。