商品销售管理系统_第1页
商品销售管理系统_第2页
商品销售管理系统_第3页
商品销售管理系统_第4页
商品销售管理系统_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、实 习 报 告题目:商品销售管理系统姓名: 学号: 专业: 班级: 实 验 实 习 中 心 制 2015 年 6 月 23 日 实习报告评语实习报告成绩: 优 良 中 及格 不及格 指导老师签字: 年 月 日目录1.设计内容12.设计目的13.设计过程23.1需求分析23.1.1用户需求23.1.2数据流图23.1.3数据字典103.1.4功能模块分析113.2概念设计阶段3.3逻辑设计阶段3.3.1关系模型3.3.2数据模型优化3.4物理设计阶段3.4.1物理设计阶段的目标和任务3.4.2数据存储方面3.4.3数据库物理设计3.4.4数据库子模式定义物理设计3.5数据库实施3.5.1建立数据

2、库3.5.2建立数据表3.5.3建立视图3.5.4建立索引3.5.5建立触发器3.5.6创建各个功能的存储过程4. 系统的实现5. 实习总结6.参考文献7.附件1.设计内容设计开发一个应用于商品销售管理系统,能够完善以下要求:一个公司目前需要一款商品销售关系系统,该公司有经理和员工。经理管理员工,对员工的信息可以进行增删改查。员工负责管理商品,对新进的商品进行添加操作,已有的商品进行修改和查询,对过时的商品进行下架处理。 员工负责销售商品,对销售的商品进行记录,对库存进行盘点和当日销售盘点。 员工负责对客户进行管理,包括新客户的录入,老客户信息的更新。 员工负责进货,对所进的货物进行统计和盘点

3、。2.设计目的数据库课程设计是为数据库原理及应用课程而独立开设的实践性课程,对于巩固数据库知识,加强学生的实际动手能力和提高学生综合素质十分必要。通过本实验达到以下目的: 培养具有C/S和B/S模式的数据库应用软件系统的设计和开发能力。 熟练掌握一种数据库系统(如SQL SERVER)的使用。 熟练掌握一种数据库应用软件开发工具(如ASP、VB、VC和Java)的使用。 通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力,提高分析问题和解决问题的能力。要求:要求掌握数据库的设计的每个步骤;掌握数据库设计各阶段的设计内容、设计方法和工具。3.设计过程3.1需求分析

4、3.1.1用户需求使用该系统的用户有两种人:员工和经理。员工对于系统的功能要求如下:商品管理首次采购的商品,进行新商品入库管理;入库的商品进行上架管理;已有的商品,进行修改和查询的管理;过时的商品进行下架管理。(2)客户管理 老客户更新信息; 新客户为其创建客户信息; 查询所有客户信息。(3)销售管理商品售出;退回商品入库。(4)修改登录密码经理对于系统的功能要求如下:1 员工管理 员工表的查看; 对于新员工为其创建员工信息; 老员工的信息更新; 员工辞职后信息删除; 员工业绩查看。库存管理 库存盘点; 当日销售盘点。修改登录密码。3.1.2数据流图3.1.2.1 顶层数据流图图 3-1-1顶

5、层数据流图3.1.2.2 第一层数据流图图 3-1-2第一层数据流图3.1.2.3 第二层数据流图 3.1.2.3.1 经理对员工的第二层数据流图图3-1-3 经理对员工的第二层数据流图3.1.2.3.2 员工对商品的第二层数据流图图3-1-4员工对商品的第二层数据流图图 3-1-43.1.2.3.3 员工对库存的第二层数据流图图 3-1-5员工对库存的第二层数据流图3.1.2.3.4 员工对销售的第二层数据流图图 3-1-6员工对销售的第二层数据流图3.1.2.3.5 员工对进货的第二层数据流图图3-1-7员工对进货的第二层数据流图3.1.2.3.6 员工对客户的第二层数据流图图3-1-8员

6、工对客户的第二层数据流图3.1.2.3.7 员工和经理修改密码的第二层数据流图图3-1-9员工和经理修改密码的第二层数据流图3.1.3数据字典(a)数据项:系统涉及的数据项有20项,如表3-1-1所示。表3-1-1数据项列表数据项编号数据项名数据项含义与其它数据项的关系存储结构别名DI-1YGBH员工编号Int员工编号DI-2YGXM员工姓名char(10)员工姓名DI-3YGXB员工性别char(2)员工性别DI-4YGNL员工年龄Int员工年龄DI-5YGMM员工密码char(20)员工密码DI-6SPBH商品编号Int商品编号DI-7SPM商品名char(10)商品名DI-8LR利润In

7、t利润DI-9KCL库存量Int库存量DI-10XSL销售量Int销售量DI-11JHJG进货价格Int进货价格DI-12CHJG出货价格Int出货价格DI-13JHL进货量Int进货量DI-14XSRQ销售日期DATE销售日期DI-15QDRQ清点日期DATE清点日期DI-16JHRQ进货日期DATE进货日期DI-17KHBH客户编号Int客户编号DI-18KHXM客户姓名char (10)客户姓名DI-19KHXB客户性别char(2)客户性别DI-20KHDH客户电话Int客户电话(b)数据结构:系统涉及的数据结构,如表3-1-2所示。表3-1-2数据结构列表数据结构编号数据结构名数据结

8、构含义组成D1YG员工信息 YGBH,YGXM,YGXB,YGNL,YGMMD2SPXX商品信息SPBH,KCL,JHJG,CHJGD3XSXX销售信息SPBH,XSL,LR,XSRQD4KCXX库存信息SPBH,KCL,QDRQD5KH客户信息KHBH,KHXM,KHXB,KHDHD6JHJL进货记录信息SPBH,JHL,JHJG,JHRQD7YGXSXX员工销售信息DDH,YGBH,KHBH,XSRQD8SPXSXX商品销售信息DDH,SPBH,XSL,XSRQ3.1.4功能模块分析根据用户需求,以及数据流图分析,提取出系统应该实现的功能,如Error! Reference source

9、not found. 3-1-8所示主要包括三大功能模块: (1)员工管理:对员工信息进行增、删、改、查的操作。 (2)商品管理模块:包括销售管理、进货管理、出货管理。 (3)客户管理:对客户的信息进行增、删、改、查的操作。商品销售管理系统员工管理删除员工修改员工查询员工增加员工商品管 理进货管理出货管理销售管理客户管理删除客户修改客户查询客户增加客户图 3-1-10 功能模块图3.2概念设计阶段分析了数据流图及数据字典,列出模块中涉及到的实体及基本E-R图。(1) 实体属性图本系统的实体有:商品实体、员工实体、客户实体、库存实体和经理实体。图 3-2-1 商品实体 图3-2-2 员工实体图3

10、-2-3 客户实体图3-2-4 库存实体图 3-2-5 经理实体(2)基本E-R图基本E-R图,如Error! Reference source not found.所示:图 3-2-6 基本E-R图3.3逻辑设计阶段3.3.1关系模型实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以

11、及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合具有相同码的关系模式可合并。具体的基本E-R图向关系模型的转化如下:员工:YG(YGBH,YGXM,YGXB,YGNL,YGMM)商品信息:SPXX(SPBH,SPM,CHJG,LR)销售信息:XSXX(DDH,SPBH,YGBH,XSRQ,KHBH,XSL)库存信息:KCXX(SPBH,KCL,QDRQ)

12、客户:KH(KHBH,GKXM,GKXB,GKDH)进货:JH(JHLSH,SPBH,JHL,JHJG,JHRQ)经理:JL(JLXM,JLMM)(注:标有直线下划线的为主属性,标有波浪线下划线的是外键属性)3.3.2数据模型优化判断每个模式是否满足3NF(是否存在部分函数依赖、传递函数依赖)关系模式YG、SP、KCXX、KH、JH不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF;关系模式XSXX存在传递函数依赖,所以将XSSS模式分解成两个关系模式SPXSXX和YGXSXX:员工销售信息:SPXSXX(DDH,YGBH,KHBH,XSRQ)商品销售信息:YGXSX

13、X(DDH,SPBH,XSL)3.4物理设计阶段3.4.1物理设计阶段的目标和任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。3.4.2数据存储方面为数据库中各基本表建立的索引如下:由于基本YGXSXX的属性YGBH经常在查询条件中出现,在这个属性上建立聚簇索引;3.4.3数据库物理设计以下各表中的有下划线的列是关键字,有波浪下滑线的列是外关键字。表3-4-1 D1员工数据表属性名数据类型类型宽度小数位数可否为空员工

14、编号intNot null员工姓名char10Not null员工性别char2Not null员工年龄intNot null员工密码intNot null表3-4-2 D2商品信息数据表属性名数据类型类型宽度小数位数可否为空商品编号intNot null商品名Char10Not null库存量intNot null进货价格Number102Not null出货价格Number102Not null利润Number102表3-4-3 D31员工销售信息数据表属性名数据类型类型宽度小数位数可否为空订单号IntNot null员工编号intNot null客户编号intNot null销售日期DA

15、TETIMENot null表3-4-4 D32商品销售信息数据表属性名数据类型类型宽度小数位数可否为空订单号IntNot null商品编号intNot null销售量intNot null销售日期DATETIME表3-4-5 D33库存信息数据表属性名数据类型类型宽度小数位数可否为空商品编号intNot null库存量intNot null清点日期DATETIMENot null表3-4-6 D4 客户表属性名数据类型类型宽度小数位数可否为空客户编号intNot null客户姓名char10Not null客户性别char2客户电话char15Not null表3-4-7 D5进货记录表属性

16、名数据类型类型宽度小数位数可否为空进货流水号IntNot null商品编号intNot null进货量intNot null进货价格Number102Not null进货日期DATETIMENot null表3-4-7 D6经理表属性名数据类型类型宽度小数位数可否为空经理姓名Char10Not null经理密码Char20Not null3.4.4数据库子模式定义物理设计表3-4-8 视图作用表编号用户子模式(View)作用(共性:提供数据保密和安全保护机制)V1JL1View便于经理查询员工的基本信息V2JL2View便于经理查看当日销售信息V3JL3View便于经理查看当日库存信息V4YG

17、1View用于员工查看商品信息V5YG2View用于员工查看商品销售表表3-4-9 员工表视图属性名数据类型类型宽度小数位数可否为空员工编号intNot null员工姓名char10Not null员工性别char2Not null员工年龄intNot null表3-4-10 当日销售信息视图属性名数据类型类型宽度小数位数可否为空商品编号intNot null商品名Char10Not null库存量intNot null表3-4-11 当日库存信息视图属性名数据类型类型宽度小数位数可否为空商品编号intNot null商品名Char10Not null库存量intNot null清点日期DAT

18、ETIMENot null表3-4-12 商品信息视图属性名数据类型类型宽度小数位数可否为空商品编号intNot null商品名Char10Not null库存量intNot null进货价格number102Not null出货价格number102Not null利润Number102Not null表3-4-13 销售信息视图属性名数据类型类型宽度小数位数可否为空订单号INTNot null商品编号intNot null销售量IntNot null商品总利润Number102Not null员工编号IntNot null客户编号IntNot null销售日期DATENot null3.5

19、数据库实施3.5.1建立数据库create database ZCH;3.5.1建立模式create schema sx_gl;3.5.3建立数据表(1)员工信息表的建立:CREATE TABLE YGXX(YGBH int IDENTITY(1,1) NOT NULL,YGXM char(10) NOT NULL,YGXB char(2) NOT NULL,YGNL int NOT NULL,YGMM int NOT NULL,constraint PK_YGXX primary key nonclustered (YGBH) )(2)商品信息表的建立CREATE TABLE SPXX(SP

20、BH int NOT NULL,SPM char(10) COLLATE Chinese_PRC_CI_AS NOT NULL,KCL int NOT NULL,JHJG numeric(10, 2) NOT NULL,CHJG numeric(10, 2) NOT NULL,LR numeric(10, 2) , constraint PK_SPXX primary key nonclustered (SPBH)(3)员工销售信息表的建立CREATE TABLE YGXSXX(DDH int NOT NULL,YGBH int NOT NULL,KHBH int NOT NULL,XSRQ

21、datetime NOT NULL,PRIMARY KEY (DDH,YGBH) (4)商品销售信息表的建立CREATE TABLE SPXSXX(DDH int NOT NULL,SPBH int NULL,XSL int NULL,XSRQ datetime,constraint PK_SPXSXX primary key nonclustered (DDH) (5)库存信息表的建立CREATE TABLE KCXX(SPBH int NOT NULL,KCL int NOT NULL,QDRQ datetime NOT NULL, PRIMARY KEY (SPBH,QDRQ)(6)客户

22、表的建立CREATE TABLE KH(KHBH int NOT NULL,KHXM char(10) COLLATE Chinese_PRC_CI_AS Not null,KHXB char(2) COLLATE Chinese_PRC_CI_AS ,KHDH char(15) Not null,constraint PK_KH primary key nonclustered (KHBH)(7)进货记录表的建立 CREATE TABLE JHJL( JHLSH int IDENTITY(1,1) NOT NULL, SPBH int NOT NULL ,JHL int NOT NULL,J

23、HJG numeric (10, 2) NOT NULL,JHRQ datetime NOT NULL, PRIMARY KEY (JHLSH) (8)经理表的建立CREATE TABLE JL(JLXM char(9) NOT NULL,JLMM int NOT NULL,)3.5.4建立视图(1) 用于经理查询员工表的视图定义如下: CREATE VIEW 经理查看视图ASSELECT YGBH, YGXM, YGXB, YGNLFROM YGXX(2) 用于经理查询商品当日销售信息的视图定义如下:CREATE VIEW 当日销售视图ASSELECT SPXSXX.SPBH, SPM, X

24、SLFROM SPXX,SPXSXXwhere EXISTS (select * from SPXSXX where datediff(dd,XSRQ,GETDATE()=0 and SPXX.SPBH=SPXSXX.SPBH)and SPXX.SPBH=SPXSXX.SPBH(3) 用于经理查询当日库存的视图定义如下:CREATE VIEW 当日库存视图ASSELECT SPXX.SPBH, KCXX.KCL,QDRQFROM KCXX,SPXXwhere exists(select * from (select SPBH,max(QDRQ) as FTime from KCXX group

25、 by SPBH) xwhere x.SPBH=KCXX.SPBH and KCXX.QDRQ=x.FTime and SPXX.SPBH=KCXX.SPBH)(4) 用于员工查询商品信息的视图定义如下:CREATE VIEW 商品信息视图ASSELECT SPXX.SPBH, SPXX.SPM, SPXX.KCL, JHJL.JHJG, SPXX.CHJG, SPXX.LRFROM SPXX INNER JOIN JHJL ON SPXX.SPBH=JHJL.SPBH (5)用于查询销售信息的视图定义如下: CREATE VIEW 销售信息视图ASSELECT SPXSXX.DDH, SPX

26、X.SPM, SPXSXX.SPBH, SPXSXX.XSL, SPXX.LR*SPXSXX.XSL AS SPZLR, YGXSXX.XSRQFROM SPXX INNER JOIN SPXSXX ON SPXX.SPBH= SPXSXX.SPBH INNER JOIN YGXSXX ON SPXSXX.DDH= YGXSXX.DDH3.5.4建立索引CREATE CLUSTERED INDEX 员工编号索引 ON YGXSXX(YGBH ASC,DDH ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY =

27、 OFF, ONLINE = OFF) ON PRIMARY3.5.5建立触发器create trigger 进货记录触发器on JHJLfor insertas declare SPBH intdeclare JHL intdeclare KCL intdeclare QDRQ datetimeselect SPBH = SPBH from insertedselect JHL = JHL from inserted where SPBH=SPBHselect KCL =0 select QDRQ =getdate()if not exists(select SPBH from KCXX w

28、here SPBH =SPBH )begininsert into KCXX values(SPBH ,KCL ,QDRQ)update KCXX set KCL =(KCL +JHL),QDRQ =getdate() where SPBH =SPBH endelsebeginselect KCL=KCL from KCXX where SPBH =SPBHupdate KCXX set KCL =(KCL +JHL),QDRQ=getdate()where SPBH=SPBHEndcreate trigger 销售触发器on SPXSXXfor insertas declare SPBH i

29、ntdeclare XSL intdeclare KCL intselect SPBH =SPBH from insertedselect XSL =XSL from inserted where SPBH=SPBHbeginselect KCL =KCL from KCXX where SPBH =SPBH update KCXX set KCL=(KCL-XSL),QDRQ=getdate()where SPBH=SPBHend-建立利润触发器create trigger 利润触发器on SPXXfor insert,updateas declare JHJG numeric (10, 2

30、)declare CHJG numeric (10, 2)declare LR intdeclare SPBH intdeclare SPM chardeclare KCL intselect SPBH =SPBH from insertedselect SPM =SPM from inserted where SPBH=SPBHselect CHJG =CHJG from inserted where SPBH=SPBHselect JHJG =JHJG from JHJL where SPBH=SPBHselect KCL =KCL from KCXX where SPBH =SPBH b

31、eginupdate SPXX set LR=(CHJG-JHJG),KCL=KCL,JHJG=JHJGwhere SPBH=SPBHend3.5.6创建各个功能的存储过程编号存储过程名称定义作用P-1YGXX_Insert详见附录1在YGXX中插入一元组P-2SPXX_Insert详见附录2在SPXX中插入一元组P-3KH_Insert详见附录3在KH中插入一元组P-4YGXSXX_Insert 详见附录4在YGXSXX中插入一元组P-5SPXSXX_Insert详见附录5在SPXSXX中插入一元组P-6KCXX_Insert详见附录6在KCXX中插入一元组P-7JHJL_Insert详见附

32、录7在JHJL中插入一元组P-8JL_Insert详见附录8在JL中插入一元组4. 系统的实现5. 实习总结通过这次课程设计,了解到我们平时的实验和这次系统设计的差距之大。但只有把平时的实验认真完成,对基本知识的一次次巩固,才可完成这次课程设计。我们往往认为的编代码在程序设计中所占比例并不大,真正要我们所做的东西其实远远不止敲代码。重要的是对整个系统的设计同时对软件开发也有更全面的了解。6.参考文献1 萨师煊 王珊,数据库系统概论(第三版),北京:高教出版社,20002 软件开发与指导;人民邮电出版社3 Delpehi数据库开发毕业设计指导及实例;机械工业出版社,20047.附件1.YGXX_Insert 的定义:YGXX_InsertCREATE PROCEDURE YGXX_InsertYGBH int,YGXM char(10),YGXB char(2),YGNL int,YGMM in

温馨提示

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

评论

0/150

提交评论