精品书店进销存系统数据库设计数据库毕业论文报告.docx

上传人:b****0 文档编号:8921049 上传时间:2023-05-16 格式:DOCX 页数:57 大小:1.81MB
下载 相关 举报
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第1页
第1页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第2页
第2页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第3页
第3页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第4页
第4页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第5页
第5页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第6页
第6页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第7页
第7页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第8页
第8页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第9页
第9页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第10页
第10页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第11页
第11页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第12页
第12页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第13页
第13页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第14页
第14页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第15页
第15页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第16页
第16页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第17页
第17页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第18页
第18页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第19页
第19页 / 共57页
精品书店进销存系统数据库设计数据库毕业论文报告.docx_第20页
第20页 / 共57页
亲,该文档总共57页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

精品书店进销存系统数据库设计数据库毕业论文报告.docx

《精品书店进销存系统数据库设计数据库毕业论文报告.docx》由会员分享,可在线阅读,更多相关《精品书店进销存系统数据库设计数据库毕业论文报告.docx(57页珍藏版)》请在冰点文库上搜索。

精品书店进销存系统数据库设计数据库毕业论文报告.docx

精品书店进销存系统数据库设计数据库毕业论文报告

 

信息工程学院

《数据库课程设计》论文

题目:

书店进销存系统数据库设计

《数据库课程设计》论文1

1.需求分析2

1.1处理对象及组织2

1.2信息处理及系统功能3

1.3数据库系统性能需要3

1.4数据库系统开发环境需求3

1.5需求分析阶段成果展示3

1.5.1数据流程图3

1.5.2数据字典6

1.5.3数据结构8

1.5.4数据流9

1.5.5数据存储10

1.5.6处理过程11

2.数据库结构设计12

2.1概念设计12

2.1.1分E-R图建立12

2.1.2全局整体E-R图15

2.2逻辑设计15

2.2.1建立关系模式16

2.2.2关系模式规范化处理16

2.2.3用户子模式建立16

2.2.4关系模式逻辑结构定义18

3.数据库物理设计19

4.数据库实施与测试19

4.1数据库实施19

4.1.1数据库及数据库对象建立19

4.1.2数据入库19

4.2数据库测试19

5.总结20

6.附录21

6.1附录1(书店进销存系统)关系模式汇总21

6.2附录2数据定义语句23

6.2.1SQLSERVER2008中对基本表的创建23

6.2.2SQLSERVER2008中对基本表的增删改25

6.2.3SQLSERVER2008中视图的创建28

6.2.4SQLSERVER2008中存储过程的创建34

6.2.5SQLSERVER2008中触发器的创建36

6.3附录3ORCl下数据操纵验证42

6.3.1ORCl中基本表的创建42

6.3.2ORCl中视图的创建42

6.3.3ORCl中存储过程的创建45

6.3.4ORCl中触发器的创建47

书店进销存系统数据库设计

吴连梅

(信息工程学院信息管理与信息系统11级2班)

摘要

本书店进销存系统根据需求主要完成对书店的管理和销售,包括书籍入库、销售、盘存,顾客积分信息等。

系统可以完成相关信息的浏览、查询、插入、删除等功能。

系统的关键是采购、库存、销售三者之间的关系,当完成入库或销售操作时系统会自动地完成库存的修改。

查询功能也是系统的核心之一,系统可以根据用户的需要进行各项查询功能。

系统采用MicrosoftSQLSERVER2008来设计数据库,并使用ORACLE移植相关功能进行实现。

本系统易于维护,易于扩充,有着还行的功能。

关键字:

数据库设计;书店进销存管理;SQLSERVER2008;ORACLE

正文内容

引言部分:

计算机的普遍应用对人类文明社会的进步与发展产生深刻影响。

越来越多的单位将计算机技术应用于日常的事务管理工作。

运用计算机技术进行管理工作不仅可以使管理工作规范化、系统化、自动化而且可以节省大量的人力、物力。

因为需求多,可行性高,数据库管理越来越受人们青睐。

书店进销存系统是一个由人和计算机等组成的能够提供信息以支持一个组织机构内部的作业,管理、分析和决策职能的系统。

通过系统分析、人工操作,便利的管理着店里的经营状况,进货、退货、销售、库存都有着清晰的条理分明,管理起来可节约时间,增强货物流动性,这个系统做起来意义还是很大的。

1.需求分析

1.1处理对象及组织

书籍:

书号、书名、书单价、作者、出版社、进价、售价

供应商:

供应商号,供应商名,供应商电话

进销存:

仓库号、库存量、面积、地址

针对书店进销存系统,分别对采购部、销售、库存等进行查询资料、与同学交流了解,总结出了这些需求信息:

对采购,商品在固定的几个供应商中购买,并且一种书只在一个供应商这采购,购进后,检查书籍不合格的可以进行退货;对销售,顾客可以根据书籍名要求书店帮忙查询库存、单价,但不能查询进价等内部信息,顾客要是发现书籍不合适,也可进行退货,不损坏全额退,损坏不予退货。

对库存,商品按类存放,一种书只能放在一个仓库里,一个仓库可以存放多种书。

因此,需要设计如下数据项和数据结构:

书籍信息,包含的数据项有:

书号、书名、作者、单价、出版社、进价等。

供应商信息,包含的数据项有:

供应商号。

供应商名、供应商电话等。

库存信息,包含的数据项有:

仓库号、面积、地址、库存量等。

1.2信息处理及系统功能

这个系统由书籍信息模块、供应商信息模块、仓库信息模块等可以实现对书籍的进销存管理以及增删改操作。

系统的功能有:

(1)书籍信息的管理包括书籍基本信息的更新、删除操作

(2)供应商信息管理:

包括供应商信息的供应商号、面积、地址等。

(3)仓库信息管理:

库存量的更新,仓库号,书籍号、库存量等。

1.3数据库系统性能需要

能在小型书店中应用,对进销存进行完善的管理,节约用户成本和时间,为用户提供方便,并有序管理库存、销售。

采购等之间的关系。

1.4数据库系统开发环境需求

采用选择功能强大的MicrosoftSQLServer2008为开发工具,还有ORACLE。

1.5需求分析阶段成果展示

1.5.1数据流程图

顶层数据流程图:

图表1顶层数据流程图

第一层数据流程图:

图表2第一层数据流程图

第二层数据流程图:

进货

图表3第二层数据流程图——进货

销售

图表4第二层数据流程图——销售

盘存

图表5第二层数据流程图——盘存

1.5.2数据字典

表1-1(书店进销存系统)数据项说明(汇总统计)

数据项编号

数据项名称

数据项含义

类型及宽度

取值范围

书籍信息表

I1

BID

书号

Char(20)

I2

Bname

书名称

Char(20)

I3

BPrice

书单价

Int

I4

BWriter

作者

Char(6)

I5

BPress

出版社

Char(20)

I6

SID

供应商编号

Char(20)

顾客信息表

I7

CID

顾客号

Char(10)

I8

Cname

顾客姓名

Char(12)

I9

CLevel

积分

Char(16)

顾客购书表

I10

BuyID

订单号

Char(20)

I11

BID

书号

Char(20)

I12

BuyNum

购买量

Int

I13

CID

顾客号

Char(20)

I14

BuyDay

购买日期

DateTime

I15

WID

员工号

Char(20)

I16

ReNum

退货量

Int

I17

BuyMoney

总费用

Float

库存图书表

I18

KCID

仓库号

Char(18)

I19

LossesNo

亏损数量

Int

I20

BID

书号

Char(20)

I21

CGnum

库存量

Int

I22

InNum

入库量

Int

I23

WID

员工号

Char(20)

I24

InTime

入库时间

DateTime

I25

OutTime

出库时间

DateTime

供应商信息表

I26

SID

供应商号

Char(10)

I27

Sname

供应商名

Char(10)

I28

Phone

供应商电话

Char(12)

采购表

I29

BID

书号

Char(20)

I30

SID

供应商号

Char(20)

I31

InTime

采购日期

DateTime

I32

Innum

供应量

Int

I34

InPrice

进价

Int

仓库信息表

I35

KCID

仓库号

Char(20)

I36

CGnum

库存量

Int

I37

Wno

员工号

Char(10)

1.5.3数据结构

表1-2(书店进销存系统)数据结构(汇总统计)

数据结构编号

数据结构名

数据结构含义

组成

DS-1

C

顾客信息

CID,Cname,CLevel

DS-2

Book

书籍信息

BNO,Bname,BWriter,BPrice

DS-4

CK

仓库信息

KCID,Area,Address

DS-5

Buy

购买信息

BuyID,BID,BuyNum,CID,BuyDay

WID,ReNum,BuyMoneyBuy

DS-6

P

采购(供应)信息

BID,SID,InTime,Innum,WID

DS-7

Save

存储信息

LossesNo,KCID,BID,CGnum,InNum,WID

InTime,OutTime

DS-8

S

供应商表

SID,Sname,Phone

DS-9

T

退货信息

BNO,Tnum

DS-10

RK

入库信息

RkID,BID,InTime,RKNum

1.5.4数据流

表1-3数据流编号

数据流编号

数据流名称

简述

数据流来源

数据流去向

数据流组成

数据流量

高峰流量

F1

采购单.

书店向供应商订购商品的订货单

采购模块

供应商

书号+供应商号+员工号+供应量

30次月

60次月

F2

发货单

供应商发出的收货单

供应商

验货模块

书号+供应商号+员工号+供应量

30次月

60次月

F3

不合格货单

采购部验货不合格单

验货模块

退货模块

仓库号+书号+不合格数量

30次月

60次月

F4

采购退货单

库管员开出的退货单

退货模块

供应商

书号+退货数量

30次月

60次月

F5

合格单

采购部验货合格单

验货模块

入库模块

书号+仓库号+合格数量

30次月

60次月

F6

入库单

库管员开出的入库单

入库模块

库存台帐

书号+仓库号+入库数量

30次月

60次月

F7

库存

现有的库存单

库存单

采购模块

书号+仓库号+现有库存数量

30次月

60次月

F8

缺货单

销售员开出的缺货单

销售模块

采购模块

书号+缺货数量

30次月

60次月

F9

订单

顾客列出的购买清单

顾客

购买服务

书号+书名+数量+单价

30次月

60次月

F10

销售单

书店向顾客的反馈单

购买服务模块

顾客

书号+书名+数量+单价+总价

30次月

60次月

F11

出库单

仓库管理员填写的货物出库记录

货物出库模块

出库单

书号+书名+数量+仓库号

30次月

60次月

F13

顾客退货单

顾客因书问题向书店提交的退书单

顾客

退货服务

书号+退货数量

30次月

60次月

F14

退货信息单

顾客退货并被受理后形成的退货信息单

退货服务

退货单

书号+退货数量

30次月

60次月

F16

库存清单

因销售、退货等引起的库存变化的清单

库存统计

库存清单

书号+仓库号+现有库存量

30次月

60次月

注:

书店需要的书供应商都能供应,不存在无货情况,采购和发货的是一样的东西。

采购退货和不合格单上的是一样的东西,合格单和入库单是一样的东西,是采购单里删除退货单上内容的信息,缺货单以及采购单由库存中库存量等于0的导出,销售单和出库单一样,

1.5.5数据存储

表1-4数据存储

数据存储编号

数据存储名称

简述

数据存储组成

相关联的处理

S1

采购记录(单)

采购员采购依据

供应商号+书号+数量

F22

S2

库存记录(单)

库存记录情况清单

仓库号+书号+库存数量

F21,F20,F23,F15,F7

F6,F17

S3

销售清单

销售情况记录单

书号+顾客号+数量

F10,F14

S4

入库单

采购回来放到仓库的书

书号+仓库号+入库数量

F6

S5

缺货单

顾客购买书籍时,发现缺货的信息

书号+书名+缺货数量+单价

F8,F12

S6

出库单

仓库发货单

书号+书名+数量+单价

F11

1.5.6处理过程

表1-5处理过程

处理逻辑编号

处理逻辑名称

简述

输入的数据流

处理

输出的数据流

处理频率

P1.1

采购

采购部采购依据

F7库存清单

F8缺货单

根据清单确认采购书籍

采购单

15次月

P1.2

验货

采购部检验进货

F2采购发货单

根据发货单检验商品

F3不合格单

F5合格单

15次月

P1.3

入库

检验合格入库

F5验货合格单

登记库存账目和流水账

F6入库记录

15次月

P1.4

退货

检验不合格退去

F3不合格货单

确定退货

F4采购退货单

15次月

P2.1

购买服务

顾客向销售部购买书籍

F9订单

根据订单向顾客销售书籍

F23销售记录

F10销售单

15次月

P2.2

货物出库

仓库根据顾客需求发货

F23销售记录

查找库存,有货出库

F11出库单

15次月

P2.3

退货服务

顾客因为书籍问题退货

F13退货单

确认退货

F14退货记录单

15次月

P3.1

库存统计

因为销售或者损坏引起的库存变化

清点库存

F16库存清单

F18报损记录

15次月

P3.2

库存清单

仓库存储情况

F16库存清单

确认库存

F17盘点清单

15次月

2.数据库结构设计

主要包括概念设计和逻辑设计两个部分。

2.1概念设计

所谓概念结构设计就是将需求分析得到的用户需求抽象为信息结构即概念模型的过程。

在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。

概念结构的主要特点是:

(1)能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个真实模型;

(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库设计成功的关键;

(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;

(4)易于向关系、网状、层次等各种数据模型转换。

概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。

描述概念模型的有力工具是E_R模型

概念设计目标:

通过对用户的需求分析,将形成的数据流程图抽象为E_R图。

任务和方法:

完成实体E_R图,局部E_R图以及全局E_R图的绘画,清晰明白的标示出实体间的联系和属性,设计的方法有:

自顶向下、自底向上、逐步扩张、混合策略,我们通常采用的是自底向上的策略,首先定义各局部应用的概念结构,然后将他们集成起来,得到全局概念结构。

2.1.1分E-R图建立

阐述分E-R图建立的思想(以中层数据为切入点,按照分层次分模块思想),用E-R模式描述。

各个形状代表的意思如下图

注:

这里指定,顾客购买的书籍就是书店销售出去的书籍;供应商供应的书籍就是书店采购部采购的书籍。

实体及属性

下划线标出的是主码

图表6实体E_R图

分E_R图:

图表7分E_R图

2.1.2全局整体E-R图

阐述全局E-R图建立的步骤,重点阐述消除冲突、冗余等过程。

如果E-R图规模较大,可以以附录形式列出。

图表8全局E_R图

2.2逻辑设计

逻辑设计阶段目标:

将实体型、实体的属性和实体之间的联系转换为关系模式,一是实体性转换为一个关系模式。

形成了一般的数据模型后,下一步就是向特定的RDBMS的模型转换。

然后进行数据模型的优化:

确定函数依赖、消除冗余,进行必要的分解,提高数据操作的效率和存储空间的利用率。

任务和方法:

逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E—R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。

设计逻辑结构时一般要分3步进行:

(1)将概念结构转换为一般的关系、网状、层次模型;

(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;

(3)对数据模型进行优化。

2.2.1建立关系模式

阐述将E-R模型转换为关系模式的基本原则和转换结果,关系模式表示形式为

R(U,F)

注意属性列表中的标明主码,并详细给出最小函数依赖集。

在一个书店进销存数据库中,有以下这几个关系模式

购买单(订单号,书名,购买量,购买日期,总费用)

购买(书号,顾客号,购买量,购买日期)

退书单(退书单号,书名,退书数量)

退货(退书单号,书号,退货量)

书籍(书号,书名,书单价,作者,出版社)

供应商(供应商号,供应商名,供应商电话)

采购供应(供应商号,书号,供应量,进价,采购日期)

仓库(仓库号,面积,所在地)

存储(仓库号,书号,库存量)放到商品表里

顾客(顾客号,姓名,积分)

入库单(入库单号,书号,入库量,入库时间)

2.2.2关系模式规范化处理

根据F,分析每一个关系模式是否满足3NF,对不满足3NF的关系模式要进行规范化处理。

2.2.3用户子模式建立

根据需求分析,研究建立满足不同需求的用户子模式,子模式表示形式为:

子模式名(属性列表)

对于购书单这一关系模式,由于顾客和管理者都需要知道其中的各个属性,故只需要建立一个视图:

购书单(图书编号,购书单编号,购书数量,购书日期)

在图书关系上,可以建立两个视图:

为一般用户建立的视图:

图书1(书名称,作者,出版社,单价)

为管理者建立的视图:

图书2(图书编号,供应商号,书名称,作者,出版社,单价,所存仓库号)

(1)外模式汇总

表2-1各个关系模式的基于不同对象的视图

用户对象

视图描述

作用

顾客、

管理者

购书单(书号,订单号,购书数量,购书日期)

用于顾客和管理员对购书情况的查询

顾客

图书1(名称,作者,出版社,单价)

用于一般用户查询图书的详细信息

管理者

图书2(书号,供应商号,书名称,作者,单价,所存仓库号)

用于管理者对图书的详细信息查询

管理者

供应商(供应商编号,供应商名,联系电话)

用于管理者对供应商的信息查询

管理者

仓库(仓库编号,库存量)

用于管理者查询仓库信息

库管员

存储(仓库编号,入库时间,库存量)

用于库管员和管理员对存放情况的查询

管理者

供应(供应商编号,书号,供应量,进价)

用于管理者对供应情况的查询

(2)关系模式

系统功能模块图

2.2.4关系模式逻辑结构定义

对每个关系模式要以表格形式描述其具体内容。

若涉及的关系模式较多,可以在正文中先用表格反映关系模式名称、含义和备注(备注指明关系模式附录编号)

关系模式名称

含义

备注

购买(销售)关系

顾客买书籍的信息

见6.1附录1表2-2

供应(采购)关系

书店采购书籍的信息

见6.1附录1表2-3

供应商关系

供应商详细信息

见6.1附录1表2-4

仓库关系

仓库详细信息

见6.1附录1表2-5

入库关系

书籍入库信息

见6.1附录1表2-6

书籍关系

书籍的基本信息

见6.1附录1表2-7

顾客关系

顾客的详细信息

见6.1附录1表2-8

顾客退书关系

顾客退书的详细信息

见6.1附录1表2-9

书店退货关系

书店向供应商退货的信息

见6.1附录1表2-10

3.数据库物理设计

主要包括数据存储位置、存储格式;索引及索引类型。

如果建立的索引较多,最好以表格形式列出。

主要包括:

索引名称、索引类型和用途。

所在表名

索引名称

索引类型

用途

供应商

SupInfo

唯一

查询供应商信息

书籍信息表

BInfo

唯一

查询书籍信息

仓库信息

KCInfo

唯一

查询仓库信息

4.数据库实施与测试

主要包括数据库实施和测试两个部分。

4.1数据库实施

4.1.1数据库及数据库对象建立

主要包括:

数据库的创建、基本表的创建、视图的创建、索引的创建、触发器的创建以及存储过程的创建;

对于具体的实现DDL语句以及相关代码,以附录形式列出,在附录2详细给出,包含了创建的语句、结果截图、还有测试截图。

4.1.2数据入库

根据需求本系统总共创建了9个基本表,在EXCEL中编辑好数据后,采用了复制粘贴的方法导入,部分数据违反唯一性约束,没有成功导入,但是数据基本足够测试用了。

4.2数据库测试

主要内容是对建立的数据库及数据库对象进行测试

具体要求:

(1)要设计好测试数据

(2)对测试的结果要以图片形式,同时注意图片的格式

(3)对测试结果进行分析,是否满足设计要求。

测试过程语句及结果截图见附录2.

5.总结

通过18—20周这三周的数据库课程设计,对数据库有了更深的了解,开始进行需求分析的时候,画数据流程图真的什么都不清楚,只是找着老师PPT上的图进行微小的变动。

但这样画下来也费了不少时间精力,到后来画E_R图的时候,才发现,照着老师的来,要做的东西会有点麻烦,自己就回过头修改基本流程图了,画E_R图的时候,也是照着自己心里想的东西画。

根本没想着,有些东西在流程图中根本没出现,就无中生有了。

设计表编写程序代码语句的时候,遇到的问题也很多,不过在老师和同学的帮忙下,都基本解决了。

当功能在SQLSERVER2008中实现后,我们简单学了一下ORACLE,并将所有功能移植到ORACLE中实现,对视图,这两个运行环境区别不大,我写的视图直接复制过来就能运行。

但对于存储过程和触发器,两者区别还挺大,就功能不变中重新编写了一下。

真觉得ORACLE不好用!

在这次课程设计中,对数据库的应用以及各部分设计过程有了更深的了解,但也可以说,了解的越多,发现不懂的也越多,无论学什么,实践总是能起到意料之外的作用,但曲折归曲折,最终还是大体完成了设计,虽然不尽完善,但是雏形还是有的。

在设计过程中,画流程图和E_R图的时候,用到了亿图这个绘图软件,编写语句时,用了SQLSERVER2008和ORACLE两个编译环境。

6.附录

6.1附录1(书店进销存系统)关系模式汇总

表2-2购买关系的说明

属性名

别名

数据类型

取值范围

是否为主属性

是否为外键

完整性要求

BID

书号

char(20)

Notnull

Buynum

购买量

int

BuyDay

购买日期

DateTime

CID

顾客号

Char(20)

Notnull

表2-3供应关系的说明

属性名

别名

数据类型

取值范围

是否为主属性

是否为外键

完整性要求

SID

供应商号

char(20)

Notnull

BID

书号

char(20)

Notnull

InTime

采购日期

DateTime

null

InNum

供应量

int

null

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2