书店图书进货管理销售系统实验Word格式文档下载.docx
《书店图书进货管理销售系统实验Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《书店图书进货管理销售系统实验Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
该模块对书店所销货物进行实时的管理,以便及时进行查询,以为以后的进货管理提供实际的依据。
4.库存管理模块:
本模块实现了对单位库存情况的快速统计,以方便对货物的即时查询,以便是否进行对货物的及时补充。
图1—2书店管理系统功能模块图
2需求分析
业务流程图
书店进货、销售管理的工作流程
#产品购进
确定图书名称,型号,数量---发货订货通知---签订合同---汇出预付款---接收图书---图书入库
#产品售出
接受买主购货通知---签订合约---接受预收款---通知发货---产品出库
#营销人员工作
工作范围---客户信息收集---产品介绍---签订合同---售后工作---取得回款---领取提成
图2—1书店进货、销售管理的业务流程图
﹒数据流程图
书店管理员通过管理系统了解书店图书信息,适当的对书店存在的书籍存在与否、销售情况等进行分析,从而完成以后的进货方向。
(1)书店进货销售顶层数据流程图
图2—2顶层数据流程图
(2)销售管理子系统第一层数据流图
图2—3子系统数据流图
﹒数据字典
·
数据项
数据项编号
数据项名
数据项含义
存储长度
DI-1
BookID
图书编号
Char(10)
DI-2
BookName
图书名
Char(20)
DI-3
Bookwriter
图书作者
DI-4
Bookpublish
图书出版社
DI-5
Bookprice
图书单价
Int(4)
DI-6
Bookddate
图书出版日期
Date
DI-7
Bookclass
图书类别
DI-8
Bookstate
图书是否卖出
DI-9
Purchaseaddress
供书商地址
Char(30)
DI-10
Purchasemobile
供书商电话
Char(15)
DI-11
Booksumtotal
应付总金额
Float(4,2)
DI-12
Payway
付款方式
DI-13
Buyinvoice
是否要发票
Boolean
DI-14
Bill
收据
DI-15
Mid
管理员编号
DI-16
Mname
管理员姓名
Msex
管理员性别
Char
(2)
DI-17
Mauth
管理员权限级别
Char(4)
DI-18
MTTeleph
管理员电话
DI-19
Maddre
管理员地址
DI-20
Roomnum
图书数目
INT(4)
DI-21
Roomaddre
图书地址
3.概念结构设计
概念结构概述
概念模型设计是整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,是各种数据模型的共同基础。
用户的需求具体体现在各种信息的提供、保存、更新和查询,这要求数据库能充分满足各种信息的输入和输出。
概念结构的主要特点是:
(1)能真实充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。
是对现实世界的一个真实模拟。
(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库设计成功的关键。
(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。
(4)易于向关系、网状、层次等各种数据模型转换。
通过上述系统功能的分析,针对书店进书、销售系统的需求,总结出以下需求信息:
1)每一书店可以在多个供书商处购买,每供书商可供给多个书店。
2)每一仓库可以放置多种类别的书,一种类别只放在一个仓库。
3)每种图书类别下可以有多种图书。
E-R图
有上述关系分析,则可以把书店销售管理系统设计以下实体:
图书类别实体、图书实体、供书商实体、订单实体、仓库实体、管理员实体。
则各实体之间关系的E-R图3-1所示:
图3-1实体之间关系的E-R图
图书类别实体E-R图:
图3-2图书类别实体E-R图
图书信息实体E-R图:
图3-2图书读者信息实体E-R图
订单信息实体E-R图:
图3-3订单信息实体E-R图
供书商信息实体E-R图:
图3-4供书商信息实体E-R图
仓库信息实体E-R图:
图3-5仓库信息实体E-R图
管理员信息实体E-R图:
图3-6管理员信息实体E-R图
顾客信息实体E-R图:
图3-7顾客信息实体E-R图
根据书店管理处理需求,对应数据表的设计及功能如下:
﹒图书类别基本信息表:
涉及书店提供的各类书籍信息。
﹒图书基本信息表:
存放书店所售图书的基本信息。
﹒订购单基本信息表:
存放与供书商相关的订单的基本信息。
﹒供书商基本信息表:
存放供书商的基本信息表。
﹒管理员基本信息表:
存放书店管理员一些基本信息表。
﹒仓库基本信息表:
存放书店书籍放置的基本信息表。
顾客基本信息表:
存放书店购书信息。
4.逻辑结构设计
概念结构是独立于任何一种数据模型的信息结构。
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
对某一种数据模型,各个机器系统又有许多不同的限制,提供不同环境与工具。
所以设计逻辑结构时一般要分3步进行:
1)将概念结构转换为一般的关系、网状、层次模型;
2)将转换来的关系模型向特定DBMS支持下的数据模型转换;
3)对数据模型进行优化。
图向关系模型的转换
关系模型的逻辑结构是一组关系模式的组合。
E-R图则是由实体型、实体的属性和实体型之间的联系3个要素组成的。
所以将E-R转换为关系模型实际上就是要将实体型、实体的属性和实体型之间的联系转换为关系模式,把1:
1、1:
N、N:
M关系转换为一些独立的关系模式或者把之间联系相互合并。
由图3-1实体E-R图转化的关系模型如下:
图书类别:
booktype(typeID,typeName,ISdelete)。
图书:
book(bookID,bookname,bookauthor,bookprice,publisher,publishdate,typeID,bookcount)。
订单:
order(orderID,ordercount,buyeradress,buyertelephone,ordersum,buyername,)。
供书商:
purchase(purchaseID,purchaseadress,ship,purchasetelephone)。
仓库:
store(storeID,count,putdate,adminisID)。
管理员:
adminis(adminiID,adminissex,adminisname,administele,admniosage)。
顾客:
customer(buydate,customername,customersex,customeradress,customerage)
统计:
statistics(bookID,adminisID,counts)。
存放:
load(bookID,storeID,loaddate)。
购买:
Buy(bookID,orderID,buycount)。
销售:
Sell(bookID,customername,sellcount)。
(1)图书类别基本信息表-booktype
字段名
数据类型
长度
描述
键引用
typeID
Char
10
类型标识
主键
typeName
50
类型名称
ISdelete
CHAR
2
是否删除
表4-1图书类别基本信息表
(2)图书基本信息表-book
bookID
bookname
书名
bookauthor
20
作者
publisher
出版社
publishdate
8
出版日期
类型编号
外键
bookcount
Int
数量
bookprice
Numeric
6
价格
表4-2图书基本信息表
(3)订单基本信息表-order
orderID
订单号
ordercount
订单量
buyeradress
收货人地址
buyertelephone
char
15
收货人电话
ordersum
9
订单总和
buyername
收货人
表4-3订单基本信息表
(4)供书商基本信息表-purchase
purchaseID
供书商编号
purchaseadress
ship
平邮
purchasetelephone
电话
表4-4供书商基本信息表
(5)仓库基本信息表-store
storeID
仓库号
count
存放数量
putdate
入库时间
adminisID
管理员号
表4-5仓库基本信息表
(6)管理员基本信息表-adminis
字段名
adminiID
adminissex
性别
adminisname
姓名
administele
admniosage
年龄
表4-6管理员基本信息表
(7)顾客基本信息表-customer
customername
顾客姓名
buydate
购买日期
customersex
顾客性别
customeradress
顾客地址
customerage
顾客年龄
表4-7顾客基本信息表
(8)统计基本信息表-statistics
主键(外键)
counts
表4-8统计基本信息表
(9)存放基本信息表-load
loaddate
入库日期
表4-9存放基本信息表
(10)购买基本信息表-Buy
buycount
购书量
表4-10购买基本信息表
(11)销售基本信息表-Sell
sellcount
销售量
表4-11销售基本信息表
5.物理结构设计
数据库的物理设计就是为逻辑数据模型选取一个最适合应用要求的物理结构的过程,在这个阶段中要完成两大任务:
(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构。
(2)对物理结构进行评价,评价的重点是时间和空间效率。
为数据库中各基本表建立的索引如下”
(1)由于图书基本表BOOK的主码,BOOKID经常在查询条件和连接操作的连接条件中出现,且它们的值唯一,在两个属性上建立唯一索引。
(2)由于基本表BOOKTYPE的属性TYPENAME,经常在查询条件中出现,并在两个属性上建立聚簇索引。
(3)订单信息表ORDER的属性ORDERID和ORDERSUM,经常在查询条件中出现,并考虑在其上建立聚簇索引。
(4)仓库信息表STORE的一属性STOREID,经常在查询条件中出现,并考虑在其上建立聚簇索引。
6.角色与触发器设计
定义BEFORE行级触发器,为仓库表STORE定义完整性规则“存放量不低于1000本,如果低于1000本,自动改为1000本”。
CREATETRIGGERINSERT_OR_UPDATE_STORE
BEFOREINSERTORUPDATEONSTORE
FOREACHROW
ASBEGIN
IF(NEW.COUNT<
1000)THEN
NEW.COUNT:
=1000;
ENDIF;
END;
7.数据库的实施和维护
建立数据库、数据表、视图、索引
建立数据库
CREATEDATABASESALEBOOK
建立数据表
(1)图书信息表的建立
CREATETABLEBOOK
(BOOKIDCHAR(10)PRIMARYKEY,
Booknamechar(50)notnull,
Bookauthorchar(20),
Publisherchar(50),
Publishdatechar(8),
typeIDchar(10)notnull,
bookcountint,
bookpricenumeric(6),
FOREIGNKEYTYPEIDREFERENCESBOOKTYPE(TYPEID));
(2)图书类别信息表建立
CREATETABLEBOOKTYPE
(TYPEIDCHAR(10)PRIMARYKEY,
TYPENAMECHAR(50),
ISDELETECHAR
(2));
(3)订单信息表
CREATETABLEORDER
(ORDERIDCHAR(10)NOTNULL,
ORDERCOUNTINT,
BUYERADRESSCHAR(50),
BUYERTELEPHONECHAR(15),
ORDERSUMNUMERIC(9),
BUYERNAMECHAR(20),
PRIMARYKEY(ORDERID));
(4)供书商信息表
(5)仓库信息表
(6)管理员信息表
(7)顾客信息表
(8)统计信息表
(9)存放信息表
(10)购买信息表
(11)销售信息表
均同上
(1)
(2)(3)如此建表。
建立视图
(1)查询图书基本信息的视图
CREATEVIEWBOOK_VIEW(图书号,书名,作者,价格,出版社,出版时间)
AS
SELECTBOOKID,BOOKNAME,BOOKAUTHOR,BOOKPRICE,
PUBLISHER,PUBLISHDATE
FROMBOOK
(2)查询仓库基本信息的视图
CREATEVIEWSTORE_VIEW(仓库号,存放数量,入库时间,管理员号)
SELECTSTOREID,COUNT,PUTDATE,ADMINIS
FROMSTORE
(3)查询存放基本信息的视图
CREATEVIEWLOAD_VIEW(图书编号,仓库号,入库日期)
SELECTBOOKID,STOREID,LOADDATE
FROMLOAD
建立索引
CREATECLUSTEREDINDEXPURCHASESHIPONPURCHASE(SHIP);
CREATEUNIQUEINDEXBKIDONBOOK(BOOKID);
8.结束语
通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。
虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。