还剩25页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
摘要本数据库是一个简单仓库管理系统,通过它可以实现对原料,物料,产品的入库,出库等管理,包含注册用户的信息,可以对原料,物料,产品的分种类,分不同型号进行管理,而且对各种各样的查询,以及对各种各样的组合条件的查询也是非常的方便,可以在实践当中运行通过它我们可以很方便的给仓库划分种类,使得什么样仓库存什么样的东西,还可以对各种产品以及物料进行很好的管理,还包括可以自己定义仓库中的剩余容量少于多少时给出很友好的提示关键词仓库管理、数据流、E-R、触发器、存储过程目录TOC\o1-3\h\z\u1设计内容与要求
11.1设计内容
11.2设计要求12需求分析
22.1系统需求概述
22.2系统需求说明
32.
2.1功能需求
32.
2.2性能需求
32.3模块分析
42.
3.1总体模块
42.
3.2分模块功能
42.4数据流图
52.5数据字典
52.
5.1具体表
52.
5.2表里的具体的列清单63概念结构设计
93.1原料—仓库E-R图
93.2物料-仓库E-R图
93.3产品-仓库E-R图
103.4具体各个实体之间__E-R图104逻辑结构设计
124.1根据实体之间的E-R图生成的关系模型125物理结构设计与功能实现
145.1物理结构设计
145.
1.1存储过程
145.
1.2存储结构存在的意义
145.2功能实现
155.
2.1存储过程
155.
2.2触发器
185.
2.3表的定义206设计体会与建议25致谢26____271设计内容与要求
1.1设计内容本次设计是要求设计一个仓库管理系统,能对原料,物料和产品的入库进行分开管理,还能够进行一种或者多种要求的组合的查询并能够对某月或者具体的某年进行结算,并能够很快的给出结果,而且还能够在原料少与某个用户定义的数据之后给出很友好的提示
1.2设计要求这个系统设计出来以后能够在实际当中发挥作用,并能够在实际当中给仓库___带来方便,也能够在以后有需要的时候能够很方便的进行扩展,很方便的对这个数据库进行维护,而且用较小的资源消耗就能够实现这些基本功能这个系统主要能实现以下的功能系统初次__时应首先进行初始化对系统的基本物料的名称、编号的初始化,对系统___的__,以及其他系统使用人员的一些用户名、权限、__的设定对现有库存情况的录入工作原材料以及产品的入库、出库、保存操作,并且能打印入库、出库单据每月的生产计划在上月底提交,可以定义最大库存量,制定本月的采购计划库存查询,查询应为组合条件查询(多条件查询),即实现对厂家、材料编号、入库日期/出库日期、产品名称/材料名称的复合条件查询当某一材料当前库存量小于等于最小库存量时,应提示需订货当库存量大于或等于最大库存量时,则不允许入库操作月底结存可以对本月的材料和产品的入库情况、库存(现在)情况、出库情况做出详细的报表打印,也可按条件查询打印对于月底结存出现材料降价,应能够对上个月消耗的产品进行已存定耗,并可打印出数据2需求分析
2.1系统需求概述近年来,__开放使我国企业得到了前所未有的发展机遇,同时也面对市场竞争的严重挑战虽然我国制造企业飞速发展但是,由于制造企业的管理水平低,导致了生产力的降低和众多企业的倒闭随着全球范围内大市场的形成与发展,加剧了企业之间在国内外市场的激烈竞争,迫使企业必须从时间、质量、成本和服务上不断增强自己的竞争力以求得生存与发展这就要求企业在生产管理上必须做出新的努力,寻求新的理论和技术面临这种严峻的形势,我们国家必须引进先进的企业管理思想和技术并不断创新信息技术的广泛应用,正改变着企业生产与管理的面貌,信息技术已成为改善生产力、提高产品质量和增加经济效益的主要力量近年来为了适应新的竞争形势出现了一些新型生产方式,如计算机集成制造系统、精益生产方式、敏捷制造、虚拟企业等,都是在计算机系统的支持下得以实现的这样,又产生了如何在生产管理中应用计算机技术来改善管理工作的问题众所周知,企业是通过向社会提供所需要的产品或服务而获得利润的经济__对工业企业而言,企业生产经过原材料购入、产品__等环节,产生价值的转移,从而生产出社会所需要的新的产品在这样的一个从原材料采购到生产,再由生产到销售的过程中,企业必然要对它的各种物资进行有计划的采购、供应、保管、__和合理使用等一系列的管理工作,通常将上述工作统称为物资管理,物资管理工作的核心是库存控制工作此仓库管理系统为了适应新形势的需要,借鉴了MRPⅡ(制造资源计划__nufacturingResour__Planning)的先进管理思想其功能覆盖了物料需求和库存控制两个方面的生产经营过程以及相关的财务活动从而为制造业管理提供了比较有效的工具
2.2系统需求说明
2.
2.1功能需求1系统初始化本部分实现系统初次运行时库存数据的初始化以及物料最大库存量、最小库存量、物料编号等的初始化2物料出人库管理本部分实现对日常的生产领料、销售提货、采购入库等工作进行管理产生出、入库单据,改变仓库货物的库存数量,登记物品数量账3库存物料定期盘点本部分工作要求调整物料库存量,做到财物相符定期对每一种库存物料进行盘点和清查工作,并按照实际盘点数量调整物料库存数量盘点结果产生盘点报表4物料采购管理本部分要求产生采购订单通过主生产计划,查询产品结构表和物料库存表,对所缺物料进行订货,并产生相应的采购订单经上级__批准后由采购部门进行采购业务5数据检索本部分实现对库存物料按日期、物料名称、供货单位等条件进行复合条件查询,并打印查询结果6系统安全管理本部分实现对系统数据库进行备份和恢复的功能,以增加系统可靠性,并对系统用户进行权限管理,以增加系统的安全性
2.
2.2性能需求在保证质量的情况下,提高运行速度,实现界面友好性、易操作性和跨平台性“仓库管理系统”应有良好的安全性,系统___通过“用户设置”,可以建立任意多个账户并为其设置权限和__,保证系统信息的保密性
2.3模块分析
2.
3.1总体模块经过整体分析,次系统主要包含以下几个主要模块如图
2.1图
2.1总体模块
2.
3.2分模块功能系统的各个模块的功能如表
2.2演示表
2.
12.4数据流图物料入库物料入库信息记录物料入库信息登记物料出库物料出库信息记录物料出库信息登记库存设置库存信息登记库存信息记录物料查询查询信息登记查询信息记录物料控制物料信息登记物料信息记录设置用户信息登机用户信息记录仓库管理物料入库表物料出库表库存设置表物料查询表物料控制表用户设置表统计信息统计信息统计信息统计信息统计信息统计信息图
2.2数据流图
2.4数据字典
2.
4.1具体表本数据库包含以下几个表,见表
2.2表
2.2名称代码主键注释__terrialsInMInMId描述物料入库的信息__terrialsOutMOutMOutId描述物料出库信息ProductsInPInPinId产品入库信息ProductsOutPOutPoutId产品出库表,描述了产品出库的时间,数量和型号Raw__terInRInRinId包括无聊入库的信息,时间,数量,编号Raw__terOutROutRoutId包括物料出库的信息,时间,数量,编号原料入库仓库—原料入库MInId原料出库仓库—原料出库MOutId产品出库仓库——产品出库产品出库__编号产品入库仓库——产品入库产品型号入库__编号物料入库仓库——物料入库物料入库__编号物料出库仓库—物料出库物料出库__编号UserUserUserId用户名ID用户注册信息表ClientClientClientId客户ID客户信息表StoreHouseStoreHouseSID仓库信息表
2.
4.2表里的具体的列清单如表
2.3所示表
2.3名称数据类型长度说明SIDChar1010仓库编号SNameVchar5030仓库名字SCapacityInt仓库的库存量SShareInt仓库剩余空间MInInvoi__IDChar1010原料入库__编号MInIDChar1010原料入库编号MInNameChar1010原料入库名称MInTimeDateTime原料入库时间MInNUMInt原料入库数量MInAddInfnVchar5050原料入库备注MOutInvoi__IDChar1010原料出库__编号MOutIDChar1010原料出库编号MOutNameChar1010原料出库名称MOutTimeDateTime原料出库时间MOutNumInt原料出库数量MOutAddInfoVchar5050原料出库备注PInInvoi__IDChar1010产品入库__编号PInIDChar1010产品入库编号PInNumInt产品入库数量PInTimeDateTime产品入库时间PInNameChar1010产品入库名称PInAddInfoVChar5050产品入库备注POutInvoi__IDChar1010产品出库__编号POutIDChar1010产品出库编号POutNameVChar5050产品出库名称POutNumInt产品出库数量POutTimeDateTime产品出库时间POutAddInfoVChar5050产品出库备注RInInvoi__IDChar1010物料入库__编号RInIDChar1010物料入库编号RInNameChar1010物料入库名称RInNumInt物料入库数量RInTimeDateTime物料入库时间RInAddInfoVchar5050物料入库备注ROutIDChar1010物料出库编号ROutNameChar1010物料出库名称ROutNumInt物料出库数量ROutTimeDateTime物料出库时间ROutAddInfoVChar5050物料出库备注PPri__Int产品出库__PVaildTime产品出库有效期PTypeChar1010产品出库类型MOutPri__Int原料出库__MOutTypeChar1010原料出库类型MInTypeChar1010原料入库类型MVaildTime原料入库有效期PinPri__Int产品入库__PInTypeChar1010产品入库类型PvalidTime产品有效期ROutTypeChar1010物料出库类型ROutPri__Int物料出库__SAddInfoVchar5050仓库备注UserNameChar1010用户名UserIdChar1010用户编号UserPasswordInt用户__UserTypeChar1010用户类型CidInt客户编号CPhoneChar1111客户__号码CPostcodeChar66____AddressChar5050地址3概念结构设计
3.1原料—仓库E-R图���仓库�MVaild�MInType�MInAddINfo�MInNum�MInTime�MInName�MInInvoriceId�SShareSCapacity�SAddInfo�SName�SID原料�入库MInId�mn图
3.1原料-仓库E-R图
3.2物料-仓库E-R图���MPrice仓库�MVaild�MInType�MInAddINfo�MInNum�MInTime�MInName�MInInvoriceId�SShareSCapacity�SAddInfo�SName�SID物料入库MInId�mn图
3.3物料-仓库E-R图
3.3产品-仓库E-R图���仓库�PVaild�PInType�PInAddINfo�PInNum�PInTime�PInName�PInInvoriceId�SShareSCapacity�SAddInfo�SName�SID产品入库PInId�mn图
3.4产品-仓库E-R图
3.4具体各个实体之间__E-R图图
3.5实体之间__E-R图4逻辑结构设计
4.1根据实体之间的E-R图生成的关系模型图
4.1实体之间的E-R图生成的关系模型5物理结构设计与功能实现
5.1物理结构设计
5.
1.1存储过程存储过程就是将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来,并且这样的语句是放在数据库中的,还可以根据条件执行不同SQL语句,那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute即可自动完成命令
5.
1.2存储结构存在的意义存储过程由SQL语句和流程控制语句组成它的功能包括:接受参数;调用另一过程;返回一个状态值给调用过程或批处理指示调用成功或失败;返回若干个参数值给调用过程或批处理为调用者提供动态结果;在远程SQLServer中运行等1存储过程是预编译过的所以存储过程执行速度很快.2存储过程和待处理的数据都放在同一台运行SQLServer的计算机上使用存储过程查询当地的数据效率自然很高3存储过程一般多由Client端通过存储过程的名字进行调用减少了网络传输量加块系统速度.4存储过程还有着如同C语言子函数那样的被调用和返回值的方便特性
5.2功能实现
5.
2.1存储过程1数据备份数据备份是通过存储过程来实现的,它具体的代码如下createpro__dureDatabase@databasenamevarchar100@pathvarchar100asbeginbackupdatabase@databasenametodisk=@pathend参数说明入口参数:@databasename是一个字符型参数,它表示的是你要备份的数据库的名称@path是一个字符型参数,它表示你要备份到具体磁盘的路径出口参数无2数据恢复数据恢复也是通过存储过程来实现的,它的代码如下createprocRestorDatabase@databasenamevarchar100@pathvarchar100asbeginrestoredatabase@databasenamefromdisk=@filenamepathend参数说明入口参数@databasename是一个字符型参数,最大可以达到100个字符,它表示你要还原的数据库的名称@filenamepath字符型参数,最大可以达到100个字符,它表示你已经备份好的数据库在磁盘上的具体的路径出口参数无3添加仓库通过存储过程来实现,它的代码如下CREATEpro__dureStoreHouseAdd@StoreHouseIDchar10@StoreHouseNamechar20@StoreHouseCapacityint@StoreHouseShareintasbegininsertintoStoreHouseSIDSNameSCapacitySSharevalues@StoreHouseID@StoreHouseName@StoreHouseCapacity@StoreHouseShareend参数说明入口参数@StoreHouseID字符型参数,最多可以有十个,表示你要添加仓库的ID号@StoreHouseName字符型参数,最多__个,表示你要添加仓库的名称它表示了它是一个存储什么样的东西的仓库@StoreHouseCapacity整型参数,表示这个仓库的容量@SShare整形参数,表示在这个仓库的剩余库存少于多少的时候给出友好的提示出口参数无4删除仓库通过存储过程来实现,代码如下createpro__dureDelStoreHouse@StoreHouseIDchar10asbegindeletefromStoreHousewhereStoreHouseID=@SIDend参数说明入口参数@SID字符型参数,最多可以有十个字符,表示你要删除仓库的ID号出口参数无5原料入库通过存储过程来实现,代码如下;CREATEpro__dure__terilasIn@MInInvoi__IDchar10@SIDchar10@MInIDchar10@MInNamechar10@MInTimedatetime@MInNOint@MInAddInfochar30asbegininsertinto__terialsInvalues@MInInvoi__ID@MInID@MInName@MInNO@MInTime@MInAddInfoinsertintoStoreHouse___teriasINvalues@SID@MInInvoi__IDupdateStoreHousesetSShare=SSphare+@MInNumwhereSID=@SIDend参数说明入口参数@MInInvoi__ID字符型参数,表示入库原料的__号,是唯一的@SID字符型参数,表示要入库的仓库的ID@MInID字符型参数,表示要入库的原料的ID@MInName字符型参数,表示要入库原料的名称@MInTime时间型参数,表示要入库原料的时间@MInNum整型参数,表示要入库原料的数量@MInAddInfo字符型参数,表示入库原料的备注,可以为空出口参数无
5.
2.2触发器1triggerStoreHouse创建检测仓库是否为满的触发器CREATETRIGGER[trig_StoreHouse]ONdbo.StoreHouseFORUPDATEASdeclare@SCapacityint@SShareintselect@SCapacity=SCapacity@SShare=SSharefromStoreHouseif@SShare=@SCapacitybeginrollbacktransactionprintyourStoreHouseisfullend说明它表示在对仓库的剩余库存进行更新的时候,库存不能够大于用户定义的仓库的容量,如果大于就会回滚事物,并且给出提示参数说明@SShare表示仓库的剩余库存@StoreHouseCapacity表示仓库的容量2trig_DelStoreHouse删除仓库的出发器createtriggertrig_DelStoreHouseonStoreHousefordeleteasdeclare@SShareintselect@SShare=SSharefromStoreHouseif@SShare0beginrollbacktransactionprintthereissomethingintheStoreHouseend说明它表示在删除仓库的时候就会触发这个触发器,如果库存不为空的话就不能够删除,回滚事物,并且给出很友好的提示参数说明@SShare仓库的剩余库存3triggerAdd__terialsCREATETRIGGER[triggerAdd__terials]ON[dbo].[__terialsIn]FORINSERTASdeclare@SShareint@StoreHouseCapacityintselect@SShare=SShare@SCapacity=SCapacityfromWarehouseif@SShare=@SCapacitybeginrollbacktransactionprintyourStoreHouseisfullpleasechangeaStoreHouseend说明表示在进行原料进库的时候如果仓库已满就不能进行入库操作参数说明@SShare仓库的库存@StoreHouseCapacity仓库的容量
5.
2.3表的定义1出库原料,代码如下createtable__terialOutMOutInvoi__IDchar10pri__rykeyMOutIDchar10__terialsOutNamechar10__terialsOutNOint__terialsOutTimedatetime__terialsOutNoti__char50;参数说明MOutInvoi__ID原料出库__,不能为空,主键MOutID出库型号MOutName出库原料姓名MOutNum出库数量MOutTime出库时间MOutAddInfo出库备注其执行效果如下图图5-1执行效果图2入库原料,代码如下createtable__terialsInMInInvoi__IDchar10pri__rykeyMInIDchar10MInNamechar10MInTimedatetimeMInNOintMInNoti__char50;参数说明MInInvoi__ID入库__编号MInID入库型号MInName入库名称MInTime入库时间MInNO入库数量MInNoti__入库备注3产品入库表createtableProductsInPInInvoi__IDchar10pri__rykeyPInIDchar10PInNumintPInTimedatetimePInNamechar5PInAddInfochar50;参数说明PInInvoi__ID产品入库__编号,主键PInID产品编号PInNum产品数量PInTime入库时间PInType入库性质PInAddInfo入库备注其执行效果如下图图5-2执行效果图4产品出库表createtableProductsOutPInvoi__IDchar10pri__rykeyPOutIDchar10POutNumintPOutTimedatetimePOutAddInfochar50;参数说明POutInvoi__ID出库__编号,主键POutID出库IDPOutNum出库数量POutTime出库时间POutAddInfo出库备注5物料入库表createtableRaw__terInRInInvoi__IDchar10pri__rykeyRInIDchar10RInNamechar10RInNumintRInTimedatetimeRInAddInfochar50参数说明RInInvoi__ID物料入库__编号,主键RrInID入库编号RInName入库名称RInNum入库数量RrInTime入库时RInAddInfo入库备注6物料出库表createtableRaw__terOutRInvoi__IDchar10pri__rykeyROutIDchar10ROutNamechar10ROutNumintROutTimedatetimeROutNoti__char50;参数说明RInvoi__ID出库__编号,主键ROutID出库IDROutName出库名称ROutNum出库数量ROutTime出库时ROutAddInfo出库备注7仓库表createtableWarehouseSIDchar10pri__rykeySNamechar20SCapacityintSShareint;参数说明SID仓库编号,主键SName仓库名称SCapacity仓库容量SShare仓库库存8用户信息表createtableUserUserNamechar10pri__rykeyUserIdchar10UserPasswordintUserTypechar10;参数说明UserName用户名,主键UserPassword拥护__UserId用户的ID号UserType用户类型客户表信息CreatetableclientCidintpri__rykeyCPhonechar11CPosecodechar6Addresschar50;Cid用户IDCPhone客户__号码CPostcode客户邮编Address客户地址6设计体会与建议在这次的数据库课程设计之中,使我对数据库有了更加深入的了解,对数据库__的流程以及方法有了初步的了解通过这次的课程设计使我对数据库的创建以及数据表的创建进一步熟悉,同时对SQL语句特别是存储过程跟触发器有了更加深入的了解,现在能够很熟练的用SQL语句写出很有用的出发器跟存储过程,更加的了解了出发器它的实质作用希望以后可以有更多的这样的课程设计,这样对我们是一种很大的锻炼致谢感谢学校为我们提供了这么好的学习环境,使得这次的课程设计得以成功进行本课题在选题及进行过程中得到雷游老师的悉心指导课程设计中中,雷老师、王老师和裴老师多次帮助我分析思路,开拓视角,在我遇到困难想放弃的时候给予我最大的支持和鼓励三位老师严谨求实的治学态度,踏实坚韧的工作精神,将使我终生受益再多华丽的言语也显苍白在此,谨向三位老师致以诚挚的谢意和崇高的敬意感谢我的室友们,我们一起经历过的聚散喜悲,一起走过的每一段路,我一生都不会忘记友情的无私为我们的大学时光重重地写下了无悔感谢我的父母对我学习上的支持____
[1]黄维通.VisualC++面向对象与可视化程序设计.北京.清华大学出版社.
2000.
[2][美]JamesR.GroffPaulN.WenbergSQL完全手册(第二版)北京.电子工业出
2003.
[3]王珊萨师煊数据库系统概论(第四版)高等教育出版社
2006.dengyananndengyan。