图书进销存管理设计实现_第1页
图书进销存管理设计实现_第2页
图书进销存管理设计实现_第3页
图书进销存管理设计实现_第4页
图书进销存管理设计实现_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-. z一、需求分析1.1需求调查通过对用户的调查,书店进货销存管理系统有如下需求:实现图书、主编等信息的管理;实现进货、入库管理; 实现退货、入库管理实现销售、出库管理;查询*段时间各种图书的进货、销售、退货情况;查询各类图书的库存总数;当图书入库时自动修改相应图书的总量和存放仓库中该图书的数量;一单可以处理多种图书比方销售设置销售单及其明细两个表; 可以对销售额,销售总量进展查询建立数据库相关表之间的参照完整性约束。图书进销存管理进货管理退货管理统计管理销售管理查询管理1.2 系统功能分析图11.进货管理模块:书店的图书一直在更新,当货源缺乏、新书上映时都需要进货。进货管理模块主要实现查询

2、图书数量,当数量缺乏时进展图书订购,根据供给商选择廉价的书籍,进货后进展图书入库操作,并输出进货单,将图书数量进展更新。2.退货管理模块:顾客把已买的书籍退还给书店。输出一份退货单并自动修改库存量,把本次退货的信息添加到退货库中。3.统计管理模块:根据销售情况输出统计的报表。一般容为每月的销售总额、销售总量及排行榜等信息。4.销售管理模块:输入顾客要买书籍的信息,自动显示此书的库存量,如果可以销售,打印销售单并修改库存,同时把此次销售的有关信息添加到日销售库中。5.查询管理模块:允许用户设置条件进展进货、退货、统计、销售和库存书籍的信息查询。1.3面对用户需求分析在图书进销存管理系统中,最主要

3、的功能就是对图书进货、销售、库存的管理以及查询功能。因此,可以将图书进销存管理系统分为进货、销售、库存三个子系统。而在所设计的图书进销存管理系统中,主要有两类用户,即图书管理员、书店管理员。各类用户在该系统中的需求不同,权限也不同。因此,为了更明确,更系统的了解用户需求,我们还可以将管理系统再细分为图书管理系统,书店管理系统。同样,将查询系统也按用户职能进展细分,即图书查询系统,书店查询系统。这样细分后,看似把系统需求繁杂化了。其实不然,细分后使各用户需求更加明确了,并且能更好的把握系统需求。二、面向对象分析和设计 类和对象设计如下:进货订单订单号:int图书号:int图书价格:int图书数量

4、:int进货日期:char添加()修改()删除()查询()库存图书号:int图书数量:int查询()添加()修改() 供给商供给商名称:char供给图书号:int图书价格: int添加()删除()查询()修改()销售订单订单号:int图书号:int图书价格:int图书数量:int销售日期:char添加()修改()删除()修改()图书类别类别号:int类别名称:char查询()增加()修改()图书信息表图书号:int char:char价格:int类别号:int查询()添加()删除()修改()图 2三、数据流图四、概念和逻辑构造设计图书图书号作者出版号价格类别号书名4.1局部E-R图图书类别类别

5、号类别名称进货订单进货日期图书数量图书价格图书号订单号库存图书号图书数量销售订单销售日期图书数量图书价格图书号订单号供书商供给商名称供给图书号图书价格图 3mnn1nnnnm图书类别分类图书购置订单填写供给商存放仓库数量管理管理员存放数量1销售订单填写顾客mn4.2全局E-R图:mn1图 44.3类和对象向关系模式转换图书表图书号,图书名,作者,价格,类别号,图书类别表类别名,类别号供给商表供给商名称,供给图书号,图书价格进货订单表订单号,图书号,图书数量,进货价格,进货日期销售订单表订单号,图书号,图书数量,销售价格,销售日期库存表图书号,图书数量五、数据库物理构造设计5.1存取方法设计数据

6、库系统是多用户共享的系统,对同一个关系要建立多条存储路径才能满足多用户的多种应用要求。对于系统来说,为了提高*些属性的查询速度,可以选择聚簇存取的方法,即把这些属性上具有一样值的元组集中放在连续的物理块上。这样会大大提高查询速度。因此,该系统中选择聚簇存取方法。5.2存储构造设计书店进货、销售管理系统是一个大型复杂的计算机网络信息系统,采用基于浏览器/效劳器B/S,客户端/效劳器C/S混合的应用体系构造来建立。数据库管理系统采用Microsoft 公司推出的SQL Server 2021 或以上版本,并用SQL进展数据库的建立和数据库中数据的维护和查询。5.3物理设计实现该设计的环境为Wind

7、ows 10专业版 + MS SQL Server 2021建立图书进销存管理系统数据库create database 图书系统建立图书表use 图书系统create table 图书表(图书号 nvarchar(20)primary key,图书名 nvarchar(20),作者 nvarchar(15)价格 float,类别号 nvarchar(20), char(20),);建立图书类别表create table 图书类别表(类别号 nvarchar(15)primary key,类别名 nvarchar(15),);4、 建立进货订单表create table 进货订单表(订单号 ch

8、ar(20) primary key,图书号 nvarchar(20),图书数量 int,图书价格 float,进货日期 datetime,)5、建立销售订单表create table 销售订单表(订单号 char(20) primary key,图书号 nvarchar(20),图书数量 int,图书价格 float,销售日期 datetime,);6、建立库存表create table 库存表(图书号 nvarchar(20) primary key,图书数量 int,);7、建立供给商表create table 供给商(供给商名称 char(20) ,供给图书号 nvarchar(20)

9、,图书价格 float,Primary key(供给商名称,供给图书号);六、数据库完整性设计6.1 主键及唯一性索引表名主键建立唯一性索引图书表(图书号)create unique inde* 图书号on图书表(图书号)图书类别表(类别名称)create unique inde* 类别号on 图书类别(类别号)进货订单表(订单号)create unique inde* 订单号on 进货订单(订单号)销售订单表(订单号)create unique inde* 订单号on 销售订单(订单号)库存表(图书号)create unique inde* 图书号on 库存(图书号)供给商表(供给商名称、供

10、给图书号)create inde* 供给商名称on 供给商(供给商名称)图 56.2 参照完整性设计1、图书表中将类别号设计为图书类别的外键alter table 图书表 add foreign key (类别号) references 图书类别表(类别号);2、进货订单表中将属性图书号为图书表的外键ALTER TABLE 进货订单表 add foreign key (图书号) references 图书表(图书号);3、销售订单表中将属性图书号为图书表的外键ALTER TABLE 销售订单表 add foreign key (图书号) references 图书表(图书号);4、库存表中将属

11、性图书号为图书表的外键ALTER TABLE 库存表 add foreign key (图书号) references 图书表(图书号);6.3触发器设计6.3.1入库Create Trigger入库1 On 进货订单表 FOR InsertAs declare n int Select n=图书号 from inserted declare num int Select num=图书数量 From inserted Update 图书表 set 数量=数量+num Where 图书号=n6.3.2出库Create Trigger 出库On 销售订单表FOR InsertAs beginupd

12、ate 库存表set 库存表.图书数量-=销售订单表.图书数量from 库存表,销售订单表where 库存表.图书号=销售订单表.图书号;end;6.4存储过程查询*段时间各种图书的进货和销售情况SELECT 进货订单表.订单号,进货订单表.图书数量,进货日期,销售订单表.订单号,销售订单表.图书数量,销售日期from 进货订单表,销售订单表 where 销售日期 = 2021-01-03 and 销售日期 = 2021-01-03 and 进货日期 = 2021-06-07七、 数据库视图设计1、建立查询每册图书销售总数的视图Create view 月销数量ASselect sum(图书数量

13、) as 图书总数,销售订单表.图书号 FROM 销售订单表 group by 销售订单表.图书号;选择供给商Create view 选择供给商ASSelect s1.供给商名称,s1.供给图书号,s1.图书价格 From 供给商 s1,供给商 s2Where s1.供给图书号=s2.供给图书号 AND s1.图书价格= 2021-1-1 and 销售日期 = 2021-1-1 and 进货日期 = 2021-12-31 end;九、程序截图十、总结通过这次数据库课程设计,我深刻的体会到作为DBA要考虑到方方面面的问题。刚开场我根本不知道从哪下手,根据关系模式,从SQL中慢慢建表。刚开场用英文定义的,可是由于没有连续的时间,英文易混。反反复复的建了好几次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论