数据库课程设计报告超市信息管理系统.doc

上传人:本田雅阁 文档编号:2551525 上传时间:2019-04-07 格式:DOC 页数:29 大小:620.51KB
返回 下载 相关 举报
数据库课程设计报告超市信息管理系统.doc_第1页
第1页 / 共29页
数据库课程设计报告超市信息管理系统.doc_第2页
第2页 / 共29页
数据库课程设计报告超市信息管理系统.doc_第3页
第3页 / 共29页
数据库课程设计报告超市信息管理系统.doc_第4页
第4页 / 共29页
数据库课程设计报告超市信息管理系统.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《数据库课程设计报告超市信息管理系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计报告超市信息管理系统.doc(29页珍藏版)》请在三一文库上搜索。

1、洛 阳 理 工 学 院课 程 设 计 报 告 课程名称 数据库课程设计 设计题目 超市信息管理系统专 业 班 级 学 号 姓 名 完成日期 2013/01/06课 程 设 计 任 务 书设计题目: 超市信息管理系统设计内容与要求:设计内容: 调研大型超市的业务流程,设计一个用于超市工作人员信息管理、商品采购管理、商品销售管理的信息系统。支持会员卡业务。顾客可以从总服务台上查询本超市有无指定的商品、查询自己的积分情况。1.基本信息管理:包括商品信息、员工信息等的查询、删除、修改等功能;2.用户信息维护:包括用户添加、密码修改、用户切换、退出、权限修改;3.采购管理:包括商品采购管理,退货管理、缺

2、货管理;4.销售管理:销售单管理、销售查询。设计要求:1.要求完成需求分析,写出功能需求和数据需求描述;2.在需求分析的基础完成数据库概念结构设计、逻辑结构设计、物理结构设计;3.用C#语言,完成信息系统的部分程序模块的界面设计。 指导教师: 2013年 1 月 6 日课 程 设 计 评 语 成绩: 指导教师:_ 年 月 日洛 阳 理 工 学 院 课 程 设 计 报 告目 录1 概述22 需求分析32.1 用户分析32.2 系统功能需求分析32.3 数据需求43 概念结构设计53.1 各个表信息的实体图设计53.2 E-R图设计84 逻辑结构设计95 物理结构设计105.1 数据库模式定义10

3、5.2 完整性设计125.3 安全性设计136 应用程序设计156.1 系统功能结构图156.2 模块设计与实现(部分界面)157设计总结25参考文献261 概述超市管理系统是针对超级市场的销售而开发的。应用超市管理系统能够转变超市的工作方式,有效提高销售速度和服务水平,提高客户对超市的信任度和满意度,改善客户关系。运用超市管理系统,在销售商品时实行出口一次性付款,可以实现超市内部现代化管理,能够准确把握每一种商品的销售动态,防止商品断档或过量储备,商品开发方向、进货的适时化都可通过超市管理系统来完成。超市管理系统将手工编制好的销售账目或根据原始超市销售记录直接在系统内制作超市销售信息,同时可

4、对输入的超市销售信息进行修改、查询等操作。这种集约化的销售管理模式既便于对超市销售信息的收集、整理和加工,又便于操作员的需求信息在最短的时间内得到反馈,同时超市管理系统可自动分析各种商品销售变化规律,商品销售结构、居民消费变化等,从而为合理进货、经营、加工、库存、销售等提供科学的决策依据。超市管理系统充分运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细分析,实现了对超市的进货、销售和库存的科学管理。2 需求分析2.1 用户分析超市管理系统的使用者,即超市的员工主要由超市经理、信息管理员、采购员、收银员组成。信息管理员:超市管理系统的系统管理者,进行系统的日常管理维护,负责单据录入

5、、采购计划、发货计划的编制,对商品、员工、会员进行各种管理,比如添加、修改、删除、更新等。采购员:根据采购计划进行商品的采购。收银员:根据顾客选购的商品进行销售数据的输入,超市管理系统的客户端使用者。2.2 系统功能需求分析(1) 用户登录时,若用户输入的用户名不存在时,提示用户重新填写,并重新回到登录界面;用户登录时,若用户输入的密码错误时,提示用户重新填写,返回登录界面。如果输入的信息不全,则要求正确填写必须输入的表项。如果输入信息正确,将提示注册完成,用户可以正常登录,进行不同权限的数据管理。用户能够根据不同权限添加、修改和删除系统不同级别的数据。(2) 管理员登录,可以从事以下操作:员

6、工管理,可以查看登录次数和时间,并可以删除。添加新用户功能,可以修改用户权限。对用户进行修改、删除。管理员工信息,可以对信息进行查询、添加、修改。折扣与VIP客户管理。查看供货商数据,并可以对数据进行管理。修改管理员密码,保证安全性。添加新商品功能,可增加删改商品信息。添加新商品,选择商品类别,输入商品名称,进行商品说明。类别管理,可以更改类别名称,可以添加和删除类别。管理销售单,可以销售单进行条件查询,并进行管理。查看库存数据,并可以对数据进行管理。(3) 用户界面本系统采用Microsoft Visual Studio 2008设计,用户交互界面采用的是基于Windows的窗口界面,并结合

7、Telerik RadControls for WinForms设计美观易懂的用户界面,数据库采用Microsoft SQL Server 2005设计。2.3 数据需求(1) 顶层数据流程 超市人员超市管理系统顾客/会员图2-1顶层数据流程图(2) 第0层数据流程处理查询处理要求检查有效性图2-2第0层数据流程图(3) 第1层数据流程要求处理类型采购信息销售信息商品信息用户信息员工信息超市数据库超市信息管理图2-3第1层数据流程图3 概念结构设计3.1 各个表信息的实体图设计1) 员工信息实体图设计员工信息表:此表记录员工所有信息,管理员通过此表进行员工查询,添加,删除,修改等操作。员工信息

8、实体图如图3-1所示。备注身份证号工号性别姓名职务员工表图 3-1 员工信息实体图2) 商品信息实体图设计 商品信息表:此表记录超市所有商品信息,管理员通过此表进行商品查询,添加,删除,修改等操作,此外,采购管理及销售管理都涉及到此表。商品信息实体图如图3-2所示。库存量商品信息表规格供应商商品编号会员价单价种类名称图 3-2 商品信息实体图3) 供应商信息实体图设计供应商信息表:此表记录所有供应商基本信息,管理员通过此表进行供货商查询,添加,删除,修改等操作。供应商信息实体图如图3-3所示。联系电话供应商信息名称地址联系人编号图 3-3 供应商信息实体图4) 商品销售单表实体图设计 商品销售

9、单表:此表记录员工销售商品的所有信息,此表对应多个销售详单。商品销售单信息实体图如图3-4所示。销售员销售单表会员号备注时间编号图 3-4 商品销售单实体图5) 商品销售详单实体图设计 商品销售详单表:此表与商品销售单表为一对多关系,记录商品销售情况。商品销售详单信息实体图如图3-5所示总金额销售详单表销售单号价格数量编号商品编号图 3-5 商品销售详单实体图6) 商品采购详单实体图设计商品采购详单表:此表与商品采购单表为一对多关系,记录商品采购情况。商品采购详单信息实体图如图3-6所示 总金额采购详单表采购单号价格数量编号商品编号图 3-6 商品采购详单实体图7) 商品采购单表实体图设计商品

10、采购单表:此表记录员工采购商品的所有信息,此表对应多个采购详单。商品采购单信息实体图如图3-7所示采购员采购单表供应商号状态编号时间图 3-7 商品采购单实体图8) 会员信息实体图设计会员信息表:此表记录所有会员基本信息,管理员通过此表进行会员查询,添加,删除,修改等操作。会员信息实体图如图3-8所示办卡时间会员信息积分备注联系电话编号姓名图 3-8 会员信息实体图3.2 E-R图设计超市管理系统数据库E-R模型,如图3-9所示:名称职工/用户职工编号籍贯备注进货日期电话地址供货商编号供货商进货进货单号商品编号名称价格商品姓名性别会员价mnmn联系人身份证号客户/会员供货销售单号销售日期数量m

11、n销售图3-9 超市管理系统数据库E-R模型4 逻辑结构设计实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模

12、式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合实体型转换为关系模式如下:1) 商品信息表(商品编号,商品名称,价格,会员价,库存量,备注,供货商编号,商品类别)2) 员工表(员工号,姓名,性别,身份证号,职务编号,备注)3) 商品销售单表(销售单编号,销售员编号,会员号,备注,销售日期)4) 商品销售详单表(详单编号,商品编号,数量,销售单编号单价,总金额,备注)5) 供货商表(供货商编号,名称,供货商地址,供货商电话,联系人,备注)6) 会员信息表(会员号,姓名,积分,联系电话,办卡日期,备注)7) 商品采购单表(采购单编号,采购员编号,供货

13、商号,备注,采购日期)8) 商品采购详单表(详单编号,商品编号,采购单号,采购数量,单价,总金额,备注)9) 职务信息表(职务编号,职务名称,职务简介)10) 类别信息表(类别编号,名称,类别简介)11) 用户信息表(用户名,用户密码,用户权限(职务编号)5 物理结构设计5.1 数据库模式定义根据超市管理系统数据库E-R模型及逻辑结构设计创建各表信息如下:1商品信息表,包含商品编号、商品名称等信息,具体结构如表5-1所示。表5-1 商品信息表字段名字段类型长度主/外键字段值约束对应中文名productNonvarchar(6)6主键Not null商品编号pNamenvarchar(50)50

14、Not null商品名称pricedecimal(18,2)Not null价格stockNumbigintNot null库存数量categorybigint外键Not null商品类别specificnvarchar(50)50 null规格suppliesNonvarchar(6)6外键Not null供货商编号memberPricedecimal(18,2)Not null会员价格notenvarchar(MAX)null备注2员工信息表,包含员工号、姓名等信息,具体结构如表5-2所示。表5-2 员工信息表字段名字段类型长度主/外键字段值约束对应中文名employeeNonvarcha

15、r(4)4主键Not null员工号namenvarchar(50)50Not null姓名idCardnvarchar(18)18Not null身份证号dutynvarchar(4)4外键Not null职务sexnvarchar(2)2Not null性别notenvarchar(MAX)null备注3供货商信息表,包含供货商编号、供货商名称等信息,具体结构如表5-3所示。表5-3 供货商信息表字段名字段类型长度主/外键字段值约束对应中文名suppliesNonvarchar(6)6主键Not null供货商编号namenvarchar(50)50Not null供货商名称address

16、nvarchar(50)50Null供货商地址personPhonenvarchar(11)11Not null供货商电话personnvarchar(50)50Not null联系人note nvarchar(MAX)Null备注4采购单信息表,包含采购单编号、供货商编号等信息,具体结构如表5-4所示。表5-4 采购单信息表字段名字段类型长度主/外键字段值约束对应中文名importBillNonvarchar(6)6主键Not null采购单编号suppliesIdnvarchar(6)6外键Not null供货商编号importDatedatetimeNot null采购日期employe

17、eIdnvarchar(4)4外键Not null采购员编号statetinyintNot null采购单状态notenvarchar(MAX)Null备注5采购详单信息表,包含采购详单编号、采购单编号等信息,具体结构如表5-5所示。表5-5 采购详单信息表字段名字段类型长度主/外键字段值约束对应中文名importBillDetailNonvarchar(6)6主键Not null采购详单编号productNonvarchar(6)6外键Not null商品编号importBillNonvarchar(6)6外键Not null采购单编号quantityInt4Not null采购数量pric

18、edecimal(18,2)Not null单价totalMoneydecimal(18,2)Not null总金额notenvarchar(MAX)Null备注6销售单信息表,包含销售单编号、销售员编号等信息,具体结构如表5-6所示。表5-6 销售单信息表字段名字段类型长度主/外键字段值约束对应中文名saleBillNonvarchar(6)6主键Not null销售单编号saleDatedatetimeNot null销售日期employeeIdnvarchar(4)4外键Not null销售员编号VipNonvarchar(20)20外键Not null会员编号notenvarchar(

19、MAX)Null备注7销售详单信息表,包含销售详单编号、销售单编号等信息,具体结构如表5-7所示。表5-7 销售详单信息表字段名字段类型长度主/外键字段值约束对应中文名saleBillDetailNonvarchar(6)6主键Not null销售详单编号productIdnvarchar(6)6外键Not null商品编号saleBillNonvarchar(6)6外键Not null销售单编号saleNumInt4Not null销售数量pricedecimal(18,2)Not null单价totalMoneydecimal(18,2)Not null总金额notenvarchar(MA

20、X)Null备注8商品类别信息表,包含类别编号、名称等信息,具体结构如表5-8所示。表5-8 商品类别信息表字段名字段类型长度主/外键字段值约束对应中文名categoryIdnvarchar(4)4主键Not null类别编号namenvarchar(20)20Not null名称Remarknvarchar(MAX)Null备注9职务信息表,包含职务编号、职务名称等信息,具体结构如表5-9所示。表5-9 职务信息表字段名字段类型长度主/外键字段值约束对应中文名dutyIdnvarchar(4)4主键Not null职务编号dutyNamenvarchar(20)20Not null职务名称R

21、emarknvarchar(MAX)Null职务简介10用户信息表,包含用户编号、密码、权限等信息,具体结构如表5-10所示。表5-10 用户信息表字段名字段类型长度主/外键字段值约束对应中文名loginNonvarchar(4)4主键Not null用户名passWordnvarchar(8)8Not null密码powernvarchar(4)4外键Not null用户权限11会员信息表,包含会员编号、姓名等信息,具体结构如表5-11所示。表5-11 会员信息表字段名字段类型长度主/外键字段值约束对应中文名vipNonvarchar(20)20主键Not null会员编号vipNamenv

22、archar(50)50Not null姓名CreateDatedatetimeNot null办卡日期vipScoreint4Not null积分phonenvarchar(11)11Not null联系电话notenvarchar(MAX)Null备注5.2 完整性设计数据库完整性是指数据库中数据的正确性和相容性。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以通过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。通过DBMS实现的数据库完整性按照数据库设计步骤进行设计,而由应用软件实现的数据

23、库完整性则纳入应用软件设计数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:1数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。2利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS的完整性控制机制是集中管理的,因此比应用程序更容易实现数据库的完整性。3合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。比如装载大量数据时,只要在装载之前临时使基于DBMS的数据库完整性约束失效,此后再使其生效,就能保证既不影响数据装载的效率又能保证数据库的完整性。4在

24、应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。在实施数据库完整性设计的时候,有一些基本的原则需要把握:1) 根据数据库完整性约束的类型确定其实现的系统层次和方式,并提前考虑对系统性能的影响。一般情况下,静态约束应尽量包含在数据库模式中,而动态约束由应用程序实现。2) 实体完整性约束、参照完整性约束是关系数据库最重要的完整性约束,在不影响系统关键性能的前提下需尽量应用。用一定的时间和空间来换取系统的易用性是值得的。5.3 安全性设计数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性

25、和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。 信息系统尽管功能强大,技术先进,但由于受到自身体系结构,设计思路以及运行机制 等限制,也隐含许多不安全因素。常见因素有:数据的输入,输出,存取与备份,源程序以及应用软件,数据库,操作系统等漏洞或缺陷,硬件,通信部分的漏洞,企业内部人员的因素,病毒,“黑客”等因素。因此,为使本系统能够真正安全,可靠,稳定地工作,必须考虑如下问题:为保证安全,不致使系统遭到意外事故的损害,系统因该能防止火,盗或其他形式的人为破坏。 1) 系统要能重建2) 系统应该是可审查的3) 系统应能进行有效控制,抗干扰能力强4) 系统使用者的使用权

26、限是可识别的SQL Server提供多层安全。在最外层,SQL Server的登录安全性直接集成到Widows NT/2000的安全上,它允许Windows NT服务器验证用户。使用这种Windows 验证SQL Server就可以利用Windows NT/2000的安全特性,例如安全验证和密码加密、审核、密码过期、最短密码长度,以及在多次登录请求无效后锁定帐号。6 应用程序设计6.1 系统功能结构图一般的超市商品管理系统,主要由四大模块组成,即基本信息管理模块,系统用户管理模块,销售管理模块,货物管理模块,此系统也不例外,主要有此四大模块组成。图6-1系统功能结构图。超市信息管理系统系统用户

27、管理基本信息管理员工信息管理商品信息管理供货商信息管理会员信息管理添加用户修改密码修改权限切换用户货物管理商品采购管理退货管理缺货管理销售管理销售单管理销售查询图6-1系统功能结构图6.2 模块设计与实现(部分界面)1) 用户登录界面运行超市管理信息系统后,首先进入用户登录界面,用户输入用户名和密码后,系统进行验证,验证通过进入程序的主界面。在进行系统登录过程中,登录模块将调用数据库里的用户信息表,并对用户名和密码进行验证,只有输入了正确的账号和密码后,系统登录才会成功。在登录模块中,对系统的尝试登录次数进行了限制,禁止用户无终止的进行系统登录尝试,在本系统中,当用户对系统的三次登录失败后,系

28、统将自动机制登录,突出登录模块。并在输入了错误的或者是不存在的账户和密码时,系统会给出出错信息提示,指明登录过程中的错误输入或者错误操作,以便用户进行正确的登录。登录界面如图6-2所示。 图6-2 登录界面主要实现代码如下:/登录 private void radBtnOk_Click(object sender, EventArgs e) try if (radTxtBoxUser.Text.Trim() = ) this.radLbInfo.Text = 请输入您的用户名!; else if (radTxtBoxPsw.Text.Trim() = ) this.radLbInfo.Text

29、 = 请输入您的密码!; else commandUnit com = new commandUnit(); string str = select * from UserInfo where loginNo = + radTxtBoxUser.Text.ToString() + ; DataTable table = com.GetDataSet(str); if (table.Rows.Count 0) _currentUser = radTxtBoxUser.Text; _currentPsw = radTxtBoxPsw.Text; IsLogin = true; this.Close

30、(); else this.radLbInfo.Text = 密码错误!; radTxtBoxPsw.Text = ; catch (System.Exception ex) throw ex; 2) 主界面 系统登录成功后,进入主界面菜单。主界面如图6-3所示。图6-3 主界面3) 修改密码界面成功登录系统后,单击“用户信息管理”菜单的“修改密码”,可以进入“修改密码”界面,进行密码的修改。修改密码界面如图6-4所示。 图6-4 修改密码界面主要实现代码如下:/修改密码protected virtual void radBtnOk_Click(object sender, EventArgs

31、 e) if (radTxtBoxOldPsw.Text = null | radTxtBoxOldPsw.Text.Trim() = ) MessageBox.Show(请输入旧密码!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; if (radTxtBoxNewPsw.Text = null | radTxtBoxNewPsw.Text.Trim() = | radTxtBoxEnterPsw.Text = null | radTxtBoxEnterPsw.Text.Trim() = ) MessageBo

32、x.Show(请输入新密码!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; string currPwd = RFrmLogin.CurrentPsw; if (currPwd = radTxtBoxOldPsw.Text.Trim() if (isSame() commandUnit com = new commandUnit(); string str = update UserInfo set passWord = + radTxtBoxEnterPsw.Text.ToString() + where l

33、oginNo = + RFrmLogin.CurrentUser + ; if (com.ExecuteCommand(str) 0) MessageBox.Show(密码修改成功!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(密码修改失败,请联系管理员!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(两次密码输入不一致!, 提醒, MessageBoxButtons.OK,

34、 MessageBoxIcon.Information); else MessageBox.Show(输入密码错误!, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); 4) 修改密码界面管理员成功登录系统后,单击“用户信息管理”菜单的“修改权限”,可以进入“修改权限”界面,进行员工权限的修改。修改权限界面如图6-5所示。 图6-5 修改权限界面主要实现代码如下:/修改权限protected override void radBtnOk_Click(object sender, EventArgs e) if (radTxtBoxOl

35、dPsw.Text = null | radTxtBoxOldPsw.Text.Trim() = ) MessageBox.Show(请输入用户名!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; if (radComBoxPower.Text = null | radComBoxPower.Text.Trim() = ) MessageBox.Show(请为用户设置权限!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; commandUnit com = new commandUnit(); string str = update UserInfo set power = + radComBoxPower.SelectedValue.ToStri

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1