《商品销售管理系统数据库课程设计.docx》由会员分享,可在线阅读,更多相关《商品销售管理系统数据库课程设计.docx(29页珍藏版)》请在三一办公上搜索。
1、目录目录11系统规划21.1系统开发目的21.2系统开发工具22需求分析32.1业务需求及处理流程32.2功能需求及数据需求分析62.3业务规则分析83概念结构设计93.1定义实体集及其属性93.2确定联系集及E-R图113.3检查是否满足需求134逻辑结构设计144.1 E-R图向关系模型的转换144.2模式求精145数据库的实施155.1数据库与基表的创建155.2数据的载入205.3数据的查询23刖 言由于科学技术的不断发展,计算机科学日渐成熟,其强大的功能已为人们所深刻认识, 它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理 已成为衡量企业管理科学化和现代化
2、的重要标志,而销售管理的全面自动化、信息化则 是其中重要的组成部分。销售管理的好坏对于企业的决策者和管理者来说都至关重要, 在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的销售管理系统具 有一定的使用价值和现实意义。1系统规划1.1系统开发目的本项目是为某商品销售公司开发的的一个商品销售管理系统,由于这个公司的规模比较 大,需要管理的货物比较多,每次仓库总是堆满了货物,货物价格混乱,如何让管理者 尽快向客户提供商品的最新价格及时商品的库存信息,成为了急于解决的问题。为了, 提高销售部人员工作效率和管理水平,销售公司希望有一个自动化的商品销售管理系统 能够给他们带来工作的便利,提高
3、工作效率。项目要达到的目标本项目设定的目标如下:系统能够提供友好的用户界面,使操作人员的工作量最大限度的减少系统具有良好的运行效率,能够得到提高生产率的目的系统应有良好的可扩充性,可以容易的加入其它系统的应用。平台的设计具有一定的超前性,灵活性,能够适应医院配置的变化。1.2系统开发工具本文以Visual Basic 6.0和sever 2008为基础,建立一个简单的商品销售管理系统, 从而实现商品销售的系统化、规范化和自动化。在此软件的开发过程中,严格遵守了软 件工程的规范,它经历了系统概述、需求分析、系统设计等几个阶段,使系统结构清晰, 条理分明。本软件安全性强,维护成本低,系统可靠性强扩
4、充性好且开发效率高,使用方便, 标准化程度较高。对于用户来说,本软件的优点就是界面简明,使用户一看到就应该能知道怎么样去使用本软件。2需求分析2.1业务需求及处理流程2.1.1业务需求分析对于商品销售系统主要业务一般有商品基本信息查询、商品信息录入、商品查询、 商品价格和折扣管理,商品库存管理。以下是不同的用户对销售管理系统需求:普通用户功能需求:注册成为新用户,登陆后进入数据库查询商品基本信息,如 商 品编号,商品名称,商品价格,有无库存,折扣;添置订单。销售部门经理的功能需求:验证后登陆,能够查询商品库存信息,查询各种商品的销售量,以及查询销量较少的商品,修改商品价格及折扣。管理员的功能需
5、求:能够录入、更改和删除商品信息,进行库存管理,设置库存上 限及下限,对库存量不足的的商品提出采购请求并制定采购计划书;受理订单并发货。 下面以活动视图的方式叙述如下:库存信息更新.-提出米购计划图1活动视图2.1.2处理流程主要的业务流程有生成采购单、订单受理以及在线生成订单,其处理流程如下:(1) 订单生成主要是根据客户需求完成的,由于该商店的财务管理的限制不支持线上 付款功能,故起订单生成的业务流程如图:采购单的生成,如下图所示:是否低于字下限?生成采购单图3 采购单生成2.2功能需求及数据需求分析系统包括管理员信息模块、客户信息模块、商品信息模块、营销信息模块(进货和 销售管理)、供应
6、商信息模块。根据详细调查其功能模块图如下所示:管理员信息 模块供应商信息 模块营销信息模 块客户信息模 块商品信息模 块管理员注册管理客户注册管理商品信息管理订单管理库存管理商品销售管理供应商管理图4 功能模块图管理员注册管理:管理员以职员身份注册并填写基本信息,包括姓名、性别、出生 年月、住址、电话。系统检查所有信息填写正确后提示注册成功,并返回职工编号。 客户注册管理:客户以游客身份注册并填写基本信息,包括姓名、性别、住址、电话。 系统检查所有信息填写正确后提示注册成功,并返回客户编号。订单管理:订单查询;订单提交后,供应商管理:为方便制定采购计划,要求保存供应商信息,包括供应商名称、供应
7、 商编号、供应商地址、联系电话、联系人。商品销售管理:包括进货和销售信息,可以对其进行添加、删除、修改和查询,填 制出库单,入库单,并进行销售统计。出库单信息包括:出库单编号,商品编号,商品名称,出库量,出库日期;入库单信息包括:入库单编号,商品编号,商品名称,入库量,入库日期;销售统计表包括:商品编号,商品名称,单价,销售量,销售额;库存管理:查询、修改商品的库存情况,并填制库存表,包括商品名称,商品编号, 库存量;填制出库登记表,包括:商品名称,商品编号,出库数量,出库日期,出库单编号;填制入库登记表,包括:商品名称,商品编号,入库数量,入库日期,入库单编号 等;商品信息管理:可以对商品的
8、价格及折扣属性进行修改。可以录入和删除商品基本 信息。2.3业务规则分析业务规则分析主要是分析数据之间的约束以及数据库约束。基于上述功能需求, 通过对销售管理的进一步理解总结归纳,其相应的业务规则如下所示:(1)客户编号,职工编号是编号的唯一标识,由系统按时间顺序生成。(2)每个订单用订单编号唯一标识,订单编号按系统时间按时间顺序生成,后提 交的订单,订单编号越大。(3)同一订单可以包含多种商品,订单在受理前可以进行修改,以及取消订单。(4)商品信息的价格及折扣变动,只能由销售经理进行。(5)一种商品只能由一个供应商供应,而一个供应商能供应多种商品。3概念结构设计数据库概念设计是根据需求分析中
9、得到的信息,并采用适当的数据模型将这些需求转化 为数据库的概念模式。在此阶段我们只关注如何描述数据及数据之间的关系。二不必关 心将要使用的数据库管理系统,根据需求分析我们可定义出以下实体集、联系集及其属 性。3.1定义实体集及其属性实体集是具有相同类型及相同性质的实体集合。通常一个实体对应一个事物。根据需求 分析,可得出以下四个实体集以及其相应的属性并得出其E-R图:1)客户实体集,其属性有:客户编号,客户姓名,性别,电话号码,家庭地址。其E-R 图如下所示:图52)职工实体集,其属性有:职工编号,职工姓名,性别,年龄,出生年月,电话,电子邮箱,家庭地址,及薪酬。其E-R图如下所示:图63)商
10、品实体集,其属性有:商品编号,商品名称,出厂日期。其E-R图如下所示:图74)部门实体集,其属性有:部门名称,部门编号,部门地址,及经理姓名,联系电话。其E-R图如下所示:图85)供应商实体集,其属性有:供应商编号,公司名称,公司地址,公司联系人,公司电话,传真,网址。其E-R图如下所示:图96)仓库实体集,其属性有:仓库编号,仓库地址。其E-R图如下所示:图103.2确定联系集及E-R图确定实体集之后,接下来就是确定联系集,就是研究实体集之间的数学关系,这是 决定E-R图设计的关键。故做出以下分析:1)客户与商品之间的“订购”联系集。它是一个多对多的联系,其描述的属性有: 订单号,订购日期,
11、订购数量,收货人,及收货地址,应收款项。2)商品与仓库之间的“存储”联系集。它是一个一对多的联系,其描述的属性有: 存储量等。3)职工与部门之间的“就职”联系集。它是一个多对一的联系,其描述的属性有: 工作职位,工龄。4)供应商与商品之间“供应”联系集。它是一个一对多的联系,其描述的属性有: 进货价格。5)部门与商品之间“销售”联系集。它是一个多对多的联系,其描述的属性有: 销售数量,销售价格,销售日期。联系集及其描述的属性及所涉及的实体集的E-R图如下图所示:供应价 格3.3检查是否满足需求在上述E-R图中,在客户与商品的“订购”联系中,一个客户在一个订单中只能订购一种商品,所以,对“订购”
12、联系进行优化,添加一个实体集订单,一个客户能下多笔订单,但一个订单只能由一个客户填制;一个订单可以订购多种商品,一个商品能被多个订单订购。优化后的需添加“订单”实体集及“订购”和“填制”两个联系集。优化后的E-R图如下所示:供应商4逻辑结构设计4.1 E-R图向关系模型的转换实体集转换成关系模式客户基本信息表(客户编号,客户姓名,性别,电话号码,家庭地址);职工基本信息表(虹编与,职工姓名,性别,年龄,出生年月,电话,电子邮箱,家庭地址,薪酬,职位,部门编号);部门基本表(部讴号,部门名称,部门地址,及经理姓名,联系电话);供应商信息表(供应商编号,公司名称,公司地址,公司联系人,公司电话,传
13、真,网 址); 商品信息基本表(商品编号,商品名称,出厂日期,进货价格,供应商编号,库存编号);订单信息表(订单编号 联系集转化成关系模式 订购统计表(订单编号 库存统计表(商品编号 销售统计表(部门编号仓库信息基本表(库存编号,仓库名称,仓库地点,仓储量) 应收款项,收货地址,收货人,客户编号)商品编号,订购日期,数量)库存编号,库存量)商品编号,销售量,销售价格,销售日期)4.2模式求精以上数据模式客户基本信息表、部门基本表、供应商信息表、仓库信息基本表、订购统 计表、库存统计表、销售统计表满足第二范式的要求;且职工基本信息表,订单信息表 能够满足减少查询次数的要求。故以上关系模式能够满足
14、商品销售数据库系统的要求。5数据库的实施5.1数据库与基表的创建1) 数据库的创建如下所示:CREATE DATABASE 商品销售管理系统ON PRIMARY(NAME = N商品销售管理系统,FILENAME=NC:ProgramFilesMicrosoftSQLServerMSSQL10.MSSQLSERVERMSSQLDATA、商品销售管理系统.mdf,SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )LOG ON(NAME = N商品销售管理系统 _log, FILENAME = NC:Program FilesMic
15、rosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLDATA、商品销售管理系统 _log.ldf , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)GO2) 商品信息表的建立如下所示:USE 商品销售管理系统GOCREATE TABLE dbo.商品信息表(商品编号bigint NOT NULL,商品名称varchar(50) NOT NULL,出厂日期datetime NOT NULL,进货价int NOT NULL,供应商编号bigint NOT NULL,库存编号bigint NOT NULL,CON
16、STRAINT PK_ 商品信息表PRIMARY KEY CLUSTERED(商品编号 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)ON PRIMARY3) 客户信息表的建立如下所示:CREATE TABLE dbo.客户信息表(客户编号bigint NOT NULL,客户姓名varchar(20) NOT NULL,性别char(2) NOT NULL,电话char(1
17、1) NOT NULL,地址text NULL,CONSTRAINT PK_ 客户信息表PRIMARY KEY CLUSTERED(客户编号 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)ON PRIMARY TEXTIMAGE_ON PRIMARY4) 仓库的建立如下所示:CREATE TABLE dbo.仓库(库存编号bigint NOT NULL,仓库名称varcha
18、r(50) NOT NULL,仓库地址varchar(50) NOT NULL,CONSTRAINT PK_ 仓库PRIMARY KEY CLUSTERED(库存编号ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)ON PRIMARY5) 部门表的建立如下所示:CREATE TABLE dbo.部门表(部门编号bigint NOT NULL,部门名称varchar(50) N
19、OT NULL,地址varchar(max) NOT NULL,经理姓名varchar(20) NOT NULL,联系方式char(11) NOT NULL,CONSTRAINT PK _部门表PRIMARY KEY CLUSTERED(部门编号ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)ON PRIMARY6) 库存统计表建立如下所示:CREATE TABLE dbo.
20、库存统计表(商品编号bigint NOT NULL,库存编号bigint NOT NULL,库存量int NOT NULL)ON PRIMARY7) 订单信息表的建立如下所示:CREATE TABLE dbo.订单信息表(订单编号bigint NOT NULL,应收款项int NOT NULL,收货地址text NOT NULL,收货人varchar(20) NOT NULL,电话char(11) NOT NULL,CONSTRAINT PK _订单信息表PRIMARY KEY CLUSTERED(订单编号ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECO
21、MPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)ON PRIMARY TEXTIMAGE_ON PRIMARY供应商表的建立如下所示:CREATE TABLE dbo.供应商(供应商编号bigint NOT NULL,供应商名称varchar(50) NOT NULL,地址varchar(50) NOT NULL,联系人varchar(10) NOT NULL,联系电话varchar(20) NOT NULL,网址varchar(50) NULL,传真号char
22、(9) NOT NULL,CONSTRAINT PK _供应商PRIMARY KEY CLUSTERED(供应商编号ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)ON PRIMARY8) 订购信息表的建立如下所示:CREATE TABLE dbo.订购信息表(订单编号bigint NOT NULL,商品编号biglint NOT NULL,订购日期datetime NOT
23、NULL,数量nchar(10) NOT NULL)ON PRIMARY9) 销售记录表的建立如下所示:CREATE TABLE dbo.销售记录(部门编号biglint NOT NULL,商品编号biglint NOT NULL,销售量int NOT NULL,销售价格int NOT NULL,销售日期datetime NOT NULL) ON PRIMARY10) 职工信息表的建立如下所示:CREATE TABLE dbo.职工信息表(职工编号biglint NOT NULL,职工姓名varchar(10) NOT NULL,性别char(2) NOT NULL,年龄int NOT NUL
24、L,出生年月datetime NOT NULL,联系方式char(11) NOT NULL,家庭地址varchar(50) NOT NULL,部门编号biglint NOT NULL,薪酬int NOT NULL,职位varchar(20) NOT NULL,CONSTRAINT PK _职工信息表PRIMARY KEY CLUSTERED(职工编号ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
25、ON PRIMARY)ON PRIMARY11) 数据库关系图建立截图如下所示:宫户信息表订购统计表n革中息去?二二发三订豚巳明仲!:-子.,.出一匚桩:B诉号南乱信息表斟应商人F T :.闵:旨F供伺年:二部门倍息表*? &哗号 瞥门名称 胡也址I修库H i -:I-J,中存统A有n国,=:-泪 m.I I Md5.2数据的载入数据库以及基本表已经创建完毕了,下面我以一个家电销售公司的业务数据为例, 输入数据库系统。部门信息的录入截图如下所示:-却I辰局祗;豆响5由一阡阿苫E理逐娓切潮脂息南掌【顼-件简面珀首言埋和J部门辑号部门名称部门地址经理姓名联系电话销售部楼硕室昊江1111111111
26、11QQ02采购部二楼叫2室刘娜跑蹬源家2跑10003库管部仓储硕室王江3333333333310004财务部-100 室王龙44444444444来jnsiJIVLL5MJ:JWL仓库信息的录入截图如下所示:库存编号仓库名称仓存地点仓储量20001号仓库A区20020002二号含库E区1000003二号苞库匚区1500004四号仓座D区300米NULLXI&Lin/LL客户信息的录入截图如下所示:订单信息的录入截图如下所示:订单编号 应收款项收货地址收货人客户编号11000000001800沈阳理工大学吴佳10000510C0000002900嘉华新城刘一100005100030000311
27、00优品天地王走吉1000021000300004300沈阳理工大学吴佳10000510COJ00QQ55QQ嘉华新城瑟六1Q0003100000000B710坤秦新界通文1000041000000007800淫河一区吴建辉100001米JfULLJZ2Z供应商信息 的录入截 图如下所示:供嗣的饲灿电话特真号网址)000:沈阳市丁-章11111111Z34Z345878wvw.bx. com30002:11111111?31231567wYw.hhgj期9.M03悉尼电子郁旧SlfirR2222221343456789im. q: CCiFTiMOi棉睥司白浆111118858881咖5wvw
28、. gd. cm*1W.耽皿职 工 信 息 的 录 入 截 图 如 下心石山土钥电话厢11DDD118:y.: = IIIIIIIII15DDLOTL1DDD4W无25LWV& 甄四 111111117树御区EEDDLCO:G1DDD9-Fl:3醐顾割旺:.:.:.:r.22BBLOTL1DD1D成买3):.月皇兵二 二二::2BBDLCO:C:10D25y.N品挡日-3DDDW艇哩ICIIE瞄皿疝皿瓯蛔皿姗皿砸商品信息的录入截图如下:昴唁息表:查倒(f -阡椅龈i有售官理系统)妈M肖售统计表:表.石-*.商品销售管理拳绒 处订单信息表:商品偏号商品名称出日期诳货侑格佚应商编号库存偏号IIOO
29、OOOOOOOjIll泳箱2010/9/3 星.50000001200010000000002手机2013/2/1 星.8000000320004i:ii:i0i:ii:ii:ii:ii:ii:i3电风扇2013/9/7 星.100LILI0LI42i:ii:ii:i20000000004徵波炉2014/1/1 星.3000000420002i:ii:i0i:ii:ii:ii:ii:ii:i5融戏机2014/5/1 星.600LILI0LI2ELiULil0000000006饮水机2013/6/1 星.1500000220003Jfl/LLNULLJFULLJfULLNULLNULL销售统计表
30、录入信息如下:请售猿汁畚 直面(阳 -阳商品i肯鲁管理系统)商品信息表:登闾(g.-商品销售管理耕j部门编号商品瑞号请售量请售俏格销售曰期1000100000000012015002017/5/19 星.10003000000000-45012002012/4/7 1.10001000000000419500smuimiiaasa1000200000000022115002012/4/1 星一.1000400000000052113002013/S/9 星.,,NULL库存信息的录入如下所示:商品编号库存编号库存重200012000000000022000350QOOODJOOQ3200Q2N
31、0000000042000118000000005200042500000000&2000180lLLJiW.定过统计信息的录入如下所示:订单编号商品编号订购日期数重00000000012013/1/5 星.2100000000100000000022013/1/5 星.3100000000200000000032015/1/5 1.510000000030000000003201&/E/L 星.2100000000400000000062014/2/1 星.1100000000500000000012012/2/8 星.6100000000B00000000042013/C/7 星.勺100
32、000000600000000022015/7/1 星.210000000070000000005201V1/9 星.5miJFI225.3数据的查询1)聚合函数如下所示:查询销售部门职工的基本信息的语句如下所示:SELECT职工姓名,性别,年龄,出生年月,职工信息表.电话,薪酬,经理姓名FROM部门信息表,职工信息表WHERE部门信息表.部门编号二职工信息表.部门编号GROUP BY部门信息表.部门编号,职工编号HAVING (部门信息表.部门编号二10001)执行结果如下所示:虹蛙 t辎出场4S卜IS118m星酝:11:111:15C00侧灿星IE3掇泌壁82)投影运算如下所示: 查询供应
33、商的联系方式,SQL语句如下所示:SELECT供应商名称,联系人,电话FROM供应商表 其运行结果如下所示:供应商名称联系人电话冰箱制渣厂丁一章11111111234远东制活愁司王强11111111123悉尼电子有限-刘强奘跤里实件4广东某f肖售公司白紫11111888888米NULLNULL3)选择运算如下所示:SELECT商品信息表.商品名称,商品信息表.进货价格,库存统计表.库存量FROM商品信息表,库存统计表WHERE商品信息表.商品编号二库存统计表.商品编号AND库存统计表.库存量 20运行结果如下所示:商品名称进货侑格库存重电叫扇10019微波炉30018结束语经过2周的努力,终于
34、设计出了一个满足功能需求的数据库,其功能完善,但也 存在着某些方面的缺陷。但还需进一步的改善和纠正,总的来说达到了数据库的要求。 不过在函数依赖集上还存在一些问题,函数部分依赖和函数传递依赖方面还是比较生 疏。通过本次数据课程实践能够让我更理解数据库对在教学和生活等方面的作用是非常 巨大的。20世纪50年代中期以前的这段时间内,主要是人工管理阶段,数据需要由应 用程序自己定义和管理,没有相应的程序设计某些相同的数据,必须有各自的应用程序 分别定义和管理这些数据,无法共享利用,因此存在大量的数据冗余,也浪费了大量的 人。不过后来的文件管理阶段就是由专门的软件对数据进行统一的管理。对于一个特定 的
35、应用,数据集中组织存放在多个数据文件或文件组中,并对该文件组来开发特定的应 用程序。虽然文件管理带来了极大方便,但是在文件系统中储存数据的弊端还有不少, 数据共享差,数据独立性差,完整性等问题。数据库管理系统的诞生让我们从中解脱了出来,所以我们能够用抽象化思维去分析 事物,总结特征,抓住联系,这是一种方法,也是一种习惯,也是数据库管理的核心思 想,我相信我能够很快掌握数据库这门技术的。参考文献1 博客论坛2 百度文库3 百度百科4 马晓梅.SQL SERVER实验指导.清华大学出版社5 数据库系统概论.萨师煊王珊 高等教育出版社1999年第3版6 完全掌握SQL Server 2008.罗运模人民邮电出版社,20097 数据库系统原理与设计.万常选等清华大学出版社,2009