北华航天工业学院课程设计报告1第一章需求分析1.1设计目标中小型销售公司普遍存在员工素质偏低、效率不高、管理混乱等问题。本系统正是基于这些问题而设计。使用该本系统,可以规范销售仓储涉及的基本操作,提高员工工作效率,减少用工成本,规范管理,增加收益。1.2功能要求本系统针对仓储销售等环节所遇到的问题,设有商品信息管理、供应商信息管理、仓库信息管理、进货管理、销售管理五个管理功能模块,来实现对商品、供应商、客户、仓储、、进货、销售的规范管理。其中(1)商品销售信息管理涉及商品信息添加、修改、查询、删除(2)供应商信息管理涉及供应商信息的添加、修改、查询、删除(3)仓库信息管理涉及仓储商品库存信息的添加、修改、查询、删除(4)进货管理涉及进货单信息的生成和商品仓储信息的更新(5)销售管理涉及销售单的生成和商品仓储信息的更新。(6)客户信息管理涉及客户信息的添加、修改、查询、删除1.2.1信息要求系统能够随时根据需要,更新数据库的信息。对于录入的信息,要准确,详细,符合属性要求。1.2.2操作要求系统要能在提高管理效率的基础上,力求操作简单、易学、实用、方便,同时还不能对操作用户有太高的素质要求。北华航天工业学院课程设计报告21.3可行性分析1.3.1经济可行性因为通过计算机控制,各种信息可以很容易的做到随时更新、维护,有利于新息的统一管理和维护,因此可以节约许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高学校的管理效率,节约了大量资金,所以从经济上完全是可行的。1.3.2技术可行性数据库是数据管理的最新技术,SQL语言能够很好的和其他界面编程语言工具(如C#)结合。用户只需面对操作界面,而不用管后台处理工作,方便用户使用。综上所述,开发该系统具有较强的可行性。北华航天工业学院课程设计报告3第二章概念结构设计2.1概念设计概念模型是对信息世界建模,所以概念模型应能够准确的描述出信息世界的常用概念。在需求分析阶段所得到的应用需求应首先抽象为信息世界的结构,才能更好的、更准确的用某一DBMS实现这些需求。而概念设计则是基于是完成需求分析后提供的需求说明书,用概念数据模型表示数据及其相互间的关系,这种数据模型是与DBMS无关的、面向现实世界的、易于被人所理解和接受的数据模型,其独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。概念性数据模型关心的是如何完整、正确地反映客观实际情况,是一种容易被人们理解的直观的数据库结构模式。同时易于更改、易于向网状、关系、层次等各种数据模型转换。概念性数据在用户和设计者之间建立了桥梁,它是整个数据库设计的关键。概念设计中常用自顶而下的实体分析方法,即首先定义全局概念结构的框架,然后逐步细化。描述概念模型的有力工具是E-R模型,是建立概念性数据模型的有力工具。2.2数据抽象与局部视图设计2.2.1数据抽象根据需求分析的数据进行分类抽象,形成了商品、供应商、仓库、客户四个实体类型。1、商品概念模型(图2-1)图2-1商品概念模型商品规格商品编号品牌类型进价售价北华航天工业学院课程设计报告42、供应商概念模型(图2-2)图2-2供应商概念模型3、仓库概念模型(图2-3)图2-3仓库概念模型4、客户管理模型(图2-4)图2-4客户管理模型5、销售员管理模型(图2-5)图2-5销售员管理模型供应商地址供应商编号名称电话银行账号信誉度客户客户编号客户类型联系电话名称仓库商品编号联系电话库存量销售员销售员编号类型联系方式用户名北华航天工业学院课程设计报告52.2.2基本E-R图设计基本E-R图(图2-6)图2-6基本E-R图库存量供应商地址供应商编号名称电话银行账号信誉度商品规格商品编号品牌类型仓库商品编号联系电话存储供应数量进货时间客户客户编号客户类型姓名联系电话数量销售销售编号进价售价北华航天工业学院课程设计报告6第三章逻辑结构设计3.1体育用品销售管理系统数据模型关系模型的逻辑结构是一组关系模式的集合。E-R图则是有实体型、实体的属性和实体型之间的联系3个要素组成。所以将E-R图转换成关系模型实际上就是将实体型、实体的属性和实体型之间的联系转换成关系模式,转换过程中遵循的规则:因为此系统E-R图中的联系为1:n或m:n,所以在转换过程中将实体间的多元联系转换成一个关系模型,该关系模型中的码由各实体的码组成。由概念设计的E-R图抽象出来的关系模型如下所示:其中主键用粗体标注,外键用下划线标注。3.2数据模型的优化本系统中,已按照数据依赖的理论对上面的关系模式进行了逐一分析,在进行了多次分解和比对后各关系模式已达到第三范式,虽然这不一定是最好关系模式,但此模式对于整个数据库设计来讲还是比较合理的,数据的操作效率和存储空间的利用效率都比较高。虽然有些查询比较难实现,但可以通过建立视图来实现。北华航天工业学院课程设计报告7第四章物理结构设计由逻辑设计抽象出来的关系表如下所示:表4-1商品表属性列字段类型字段长度主码商品编号char9是品牌char20类型char20规格char20进价float售价float表4-2供应商表属性列字段类型字段长度主码供应商编号char9是名称char20地址Char20电话char20银行账号Char20信誉度Char4表4-3客户表属性列字段类型字段长度主码客户编号char9是名称char10联系方式char20客户类型Char6类型char8表4-4仓库表属性列字段类型字段长度主码商品编号char9是联系电话char20库存量int表4-5进货表属性列字段类型字段长度主码商品编号char9是供应商编号Char9是数量Int进货时间Datetime北华航天工业学院课程设计报告8表4-6销售表属性列字段类型字段长度主码商品编号char9是客户编号Char9是数量int销售员编号char9是卖出时间datetime表4-7用户表属性列字段类型字段长度主码用户名char9是用户密码char19用户类型char8表4-8销售员表属性列字段类型字段长度主码销售员编号char10是用户名char10密码char20类型Char8北华航天工业学院课程设计报告9第五章数据库实施5.1数据库创建5.1.1创建数据库createdatabase体育用品销售系统管理on(name=体育用品销售管理_data,filename='d:\data\体育用品销售管理_data.mdf',size=10MB,maxsize=100MB,filegrowth=10%)logon(name=体育用品销售管理_log,filename='f:\data\体育用品销售管理_log.ndf',size=10MB,maxsize=100MB,filegrowth=1MB)5.1.2创建关系模型createtableGYS--供应商(供应商编号char(9)primarykey,名称char(20)notnull,地址char(20)notnull,北华航天工业学院课程设计报告10电话char(20)notnull,银行账号char(20)notnull,信誉度char(4))createtableSPB--商品表(商品编号char(9)primarykey,品牌char(20)notnull,类型char(20)notnull,售价floatnotnull,进价floatnotnull,规格char(20)notnull)createtableJHD--进货单(供应关系)(供应商编号char(9),商品编号char(9),数量intnotnull,进货时间datetimeprimarykey(供应商编号,商品编号),foreignkey(商品编号)referencesSPB(商品编号),foreignkey(供应商编号)referencesGYS(供应商编号))createtableKCB--库存表(北华航天工业学院课程设计报告11商品编号char(9),联系电话char(20),库存量int,primarykey(商品编号),foreignkey(商品编号)referencesSPB(商品编号))createtableselltable--售货员表(销售员编号char(10)primarykey,用户名char(10)notnull,密码char(20)notnull,类型char(8))createtableXSD--销售单(销售员编号char(10),商品编号char(9)notnull,数量intnotnull,卖出时间datetime,客户编号char(9),primarykey(销售员编号,商品编号,客户编号),foreignkey(商品编号)referencesSPB(商品编号),foreignkey(销售员编号)referencesselltable(销售员编号),foreignkey(客户编号)referencesKHB(客户编号),北华航天工业学院课程设计报告12)createtableYHB--管理员表(用户名char(9)primarykey,用户密码char(19)notnull,用户类型char(8))--客户表createtableKHB(客户编号char(9)primarykey,客户类型char(6)check(客户类型in('高级','普通')),姓名char(10),联系电话char(20)notnull,类型char(8))5.2各功能实现5.2.1登录界面如图5-1图5-1登录界面北华航天工业学院课程设计报告13select*fromYHBWHERE用户名='董世磊'and用户密码='20094051236'and用户类型='管理员'select*fromKHBWHERE用户名='王楠'and用户密码='A1'and用户类型='客户'select*fromYHBWHERE用户名='董'and用户密码='3066'and用户类型='销售员'5.2.2商品信息管理如图5-2图5-1商品信息管理视图--销售员查看商品信息createprocedure销售员查看商品信息@商品编号char(9)asbeginifexists(select*fromSPBwhere商品编号=@商品编号)beginselect商品编号,品牌,类型,售价,规格fromSPBwhere商品编号=@商品编号北华航天工业学院课程设计报告14endelseprint'不存在该商品!'endexec销售员查看商品信息'10003'--客户查看商品信息createprocedure客户查看商品信息@商品编号char(9)asbeginifexists(select*fromSPBwhere商品编号=@商品编号)beginselect商品编号,品牌,类型,售价,规格fromSPBwhere商品编号=@商品编号endelseprint'不存在该商品!'endexec客户查看商品信息'10003'--管理员删除商品信息createtrigger删除商品信息onSPBinsteadofdeleteasbegindeclare@商品编号char(9)select@商品编号=商品编号fromdeleteddeleteJHDwhere商品编号=@商品编号deleteXSDwhere商品编号=@商品编号北华航天工业学院课程设计报告15deleteKCBwhere商品编号=@商品编号enddeleteSPBwhere商品编号='10001'--管理员修改商品信息createprocedure修改商品信息@商品编号char(9),@品牌char(20),@类型char(20),@售价float,@进价float,@规格char(20)asbeginifexists(select*fromSPBwhere商品编号=@商品编号)beginupdateSPBset品牌=@品牌,类型=@类型,售价=@售价,进价=@进价,规格=@规格where商品编号=@商品编号print'商品信息修改成功!'