《数据库仓库管理系统课程设计(共29页).doc》由会员分享,可在线阅读,更多相关《数据库仓库管理系统课程设计(共29页).doc(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上课 程 设 计课程设计名称: 数据库应用课程设计 专 业 班 级 : 信息管理与信息系统 学 生 姓 名 : * 学 号 : * 指 导 教 师 : 段群 课程设计时间:2011.12.20-2010.12.24 计算机应用技术专业课程设计任务书学生姓名专业班级学号题 目仓库管理系统课题性质A工程设计课题来源D自拟课题指导教师同组姓名无主要内容随着市场高速的发展,其经营管理也变得愈加复杂,早期的人工管理的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。仓库形态具有种种优点,但在目前状况下,它仍存在零售业企业所共有的落后的一面,如:不能有效地管理每种
2、商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,而且在仓库管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。而该系统则可以方便的实现商品的录入,查询,添加,删除等功能。使操作更简便效率任务要求 综合运用所学的数据库基本知识,并能通过查阅相关文献材料,独立完成该课题的设计开发工作。要求根据本课题设计出合理的数据结构,并实现商品的录入,查询,修改,删除等功能。前台开发工具可采用VB.net或其他开发工具;后台数据库选用SQL Server。参考文献陶宏才.数据库原理及设计.北京:清华大学出版社,2001范立南.SQL S
3、erver 2000 实用教程.北京: 清华大学出版社,2003李香敏.SQL Server 2000 编程员指南.北京:北京希望电子出版社,2004王丙义,胡鸿. 数据库原理与Visual Foxpro应用. 北京:中国铁道出版社,2005审查意见指导教师签字:教研室主任签字: 2010年 11月 16 日 目录7.应用程序实现12专心-专注-专业1.问题描述1.1背景 仓库是工厂的一个重要的中转站,仓库里能储存各种各类的货物,货物的流动性比较大,需要处理的数据较多,直接有人工检索信息和更新仓储信息比较繁琐,为了能提高仓库的管理效率,设计适合仓储管理的数据库系统是很重要的。1.2功能要求工厂
4、需要一个能够实现管理仓储功能的数据库系统,该系统的用户为仓库管理员,同时他也是系统管理员。系统的主要功能如下:1) 仓库入库管理:主要是管理员对进入仓库的货物进行登记,包括货物号、货物名、货物数量、货物价格、货主以及仓库号等。以便统一管理,当同一货主的同种货物入库时记录追加,同时也要记录仓库入库的日志信息。2) 仓库提货管理:当货主提走货物时进行该管理,在货物出库时,进行登记,登记内容货物号、货物名、货物数量、货主、货物价格、日期等。3) 仓库查询管理:用户可按货物号、按货物名、按货主、仓库号等进行查询。这些查询主要是用户西药知道货物资料是进行,由于只进行查询操作,所以数据以只读的形式出现。4
5、) 货物信息维护功能:主要对货物的基本资料和信息进行维护。其中包括货物的价格、货物的种类的变化等。.需求分析2.1分析模块1)仓储管理员的系统功能模块 仓储管理系统管理员入库管理出库管理货物信息维护仓库编号登记货物名称登记货物编号登记货物价格登记货物数量登记货主登记入库时间登记提货人登记货物编号登记货物数量登记提货时间登记仓库号库存统计更新货物价格修改货物分类 图2.1-12)用户查询模块 用 户 登陆查询 仓库管理系统 货物信息 用 户图2.1-22.2数据流数据流图表达了数据和处理的关系,根据用户的需求分析和仓库管理系统的需求,得出如下图1-1所示的仓库管理数据流图。货物入库单货物出库单仓
6、库管理员用户仓库管理系统查询信息 图2.21仓库管理系统数据流3、数据字典1)数据项数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描述,仓库管理的主要数据见下表。货物入库表:序号字段别名数据类型数据长度码1huowuhao货物编号char10Y2huowuming货物名称char20N3xinghao货物型号char10N4shuliang货物入库存数量char10N5danjia货物入库单价char10N6zongjia货物入库时价格char10N7rukushijian货物入库时间char10N8beizhu货物备注
7、信息char20N货物出库表:序号字段别名数据类型数据长度码1huowuhao 货物编码char10Y2huowuming货物名char20N3xinghao货物出库型号char10N4shuliang货物出库数量char10N5danjia货物出库单价char10N6zongjia货物出库总价char10N7chukushijian货物出库时间char10N8beizhu货物出库备注char20N序号字段别名数据类型数据长度码1 bianhao商品编号char10Y2shangpinming商品名char20N3 xinghao商品型号char10N4changjia 商品生产厂家char2
8、0Y4changzhi 商品生产地char20N5riqi 商品生产日期话char10N6beizhu 商品备注char20N仓库商品信息信息表:商品库存信息:序号字段别名数据类型数据长度码1 huowuhao货物编号char10Y2huowuming货物名char20N3 xinghao货物型号char10N4shuliang货物数量char10N4danjia 货物单价char10N5zongjia 货物总价话char10N6beizhu 货物备注char20N3.概念结构设计3.1 E-R图仓库管理信息系统可以划分的实体有:货主信息实体、货物信息实体、仓库信息实体、提货人信息实体,货物入
9、库记录信息实体、货物出库记录信息实体,用E-R图一一描述这些实体。3.1.1货主实体E-R图:货 主 货主代号 货主姓名货主电话图3-1 货主信息实体E-R图3.1.2提货人实体E-R图:. 提货人代号姓名电话地址图3-2 提货人信息实体E-R图3.1.3货物信息实体E-R图:货 物类别编号 名称货主代号图3-3信息实体E-R图3.1.4.仓库信息实体E-R图:仓库号仓库容量仓库实体信息图3-4仓库信息实体E-R图3.1.5入库信息实体E-R图:入库信息实体入库时间入库数量仓库编号货物编号入库价格图3-5记录信息实体E-R图仓库编号出库时间货物编号出库数量出库库信息实体实体3.1.6出库信息实
10、体E-R图:出库价格提货人代号图3-6出库信息实体E-R图3.1.7总的信息实体E-R图:1UpdateData(true);m_pSet-Update(); 1用 户登记查询仓 库入库管 理出库货 物货 物管理员实体m1拥 有货主提 货 m_pSet-AddNew();UpdateData(true);m_pSet-Update(); 1m_pSet-AddNew();UpdateData(true);m_pSet-Update(); 1m_et-AddNew();UpdateData(true);m_pSet-Update(); 1n_pSet-AddNew();UpdateData(tr
11、ue);m_pSet-Update(); 1m_pSet-AddNew();UpdateData(true);m_pSet-Update(); 1nm_pSet-Update(); 11UpdateData(true);m_pSet-Update(); 1n1n1提货人图3-7总的信息实体E-R图4.逻辑结构设计E-R图转换成关系模式。货主 (货主代号,货主姓名,货主电话)货物 (货物编号,货物名称,货物所属类别)入库 (货物编号,货物入库时间,货物入库时价格,货物入库数量,货主编号,仓库号)出库 (货物编号,货物出库数量,货物出库价格,货物出库时间,提货人编号,仓库号)仓库 (仓库号,仓库容
12、量)提货人(提货人代号,提货人姓名,提货人电话,提货人地址)5. 存储过程设计51创建列表创建货主表P:CREATE TABLE P( Pid int Primary key,Pname char(50) not null, Ptel char(16);创建货物信息表Shop:CREATE TABLE Shop( ShopId int Primary key , Shopname char(50) not null,Shopib char(50) not null );创建入库表Comehouse:CREATE TABLE Comehouse ( ShopId int not null, Cs
13、hoptime char(30) not null, Cshopprice char(8) not null, CShopmum int not null, Pid int not null, HouseID int );创建出库表Outhouse:CREATE TABLE Outhouse( ShopId int not null, Goshopnum int ,Goshopprice char(8),Gotime char(20) not null,GoId int,HouseID int);创建仓库表House:CREATE TABLE House(HouseID int Primary
14、 key,Housemun int);创建提货人表Goperson:CREATE TABLE Goperson( GoId int Primary key,Goname char(50) not null ,Gotel char(10), Goaddress char (50);52储存过程1)创建一个查询存储过程create procedure comehouse_passelect *from comehouse goexec comehouse_p2)在comeshop插入一个元组create procedure comeshop_1asinsertinto comeshop value
15、s(,2,1000,301)53建立索引为comeshop表建立货物编号索引create clustered index comeshop on Comehouse(ShopId)为outshop表建立货物编号索引create clustered index outshop on outhouse(ShopId) 6. 触发器设计1)当删除comehouse表中某一货主基本信息时触发p表,删除相应的记录。create trigger comehouse_deleteon comehousefor delete asdelete pfrom deletedwhere comehouse.pid=
16、p.pid;2)当删除outhouse表中某一货主基本信息时触发Goperson表,删除相应的记录。create trigger outhouse_deleteon outhousefor delete asdelete Gopersonfrom deletedwhere outhouse.GoId=Goperson.Goid;7.应用程序实现7.1建立ODBC数据源(1)打开控制面板,双击控制面板上的“管理工具”图标,然后双击“管理工具”窗口中的“数据源(ODBC)”图标,弹出“ODBC数据源管理器”对话框,如图1所示。图1 “ODBC数据管理器”对话框(2)建立一个系统DSN数据源,选择“
17、系统DSN”选项卡,然后单击“添加”按钮,弹出如图2对话框。在如图2对话框中选择要连接的数据库管理系统的驱动程序。这里选择“SQL Server”,单击“完成”按钮。图2 “创建数据源”对话框(3)连接到的数据库服务器的名字。在“名称”文本框中输入数据源的名字,在“说明”文本框中输入次数据源的说明信息,在“服务器”下拉列表框中指定要连接的数据库服务器的名字, 选择用户登录到的数据库服务器的身份验证方式和用户登录表示,然后单击“下一步”按钮,弹出图3所示对话框。在如图7-5所示的对话框中,选择用户登录的默认数据库,单击“下一步”按钮图3 选择用户登录的默认数据库(4)指定用于SQLServer消
18、息的语言、字符数据转换和SQL Server驱动程序是否应当使用区域设置,单击“完成”按钮,弹出如图4所示的对话框。图4 新建ODBC数据源的描述(5)对话框中显示了所定义的OBDC数据源的描述信息,单击“测试数据源”按钮,可以测试一下所建立的数据源是否成功。建立好的OBDC数据源会列在“OBDC数据源管理器”窗口中,单击“确定”按钮,关闭“OBDC数据源管理器”窗口。7.2 Visual C+与数据库连同的应用程序1.创建应用程序框架 (1)打开Visual C+主控界面。单击“文件/新建”菜单项,在弹出的对话框中选择“新建工程类别”类型。在“工程类型”列表框中选择“MFCAppWizard
19、(exe)”工程类型。 (2)输入工程名称为“仓库管理系统”,并选择合适的Win32平台类型。(3)单击确定,进入文档类型设置。(4)选择单文档类型,选择一个单文档的应用程序,选择文档/查看信息结构支持。(5)单击“下一步”,进入第二步,出现对话框,需要用户对数据库的应用做一些相关的选择。图5程序框架设置(6)选择“查看数据库不适用文件支持”选项,该数据源就是我们在前面创建的“仓库管理系统”。(7)单击“Data Source”按钮,弹出如图6所示对话框。在“Data Source”选项区域中的“ODBC”下拉列表中选择“仓库管理系统”。 图6(8)单击“OK”,选择数据表就是文档界面所使用的
20、数据表,选择其中一个,如图7所示。图7单击OK,按钮确单击“完成”出现如图8所示的工程向导全部设置过程的信息。图8(9)单击确定按钮,出现如图10所示的应用程序的基本框架7.3主窗体的基本制作(1).在工程框架的主窗体中IDD_MY_FORM中加入六个静态的标签控制。(2)鼠标右键单击静态标签控制,出现快捷菜单。(3)在快捷菜单中单击“属性”选项,弹出把奥前控制的文本属性设置对话框。图9(4)在窗体中加入六个编辑框。7.4编辑框控件与数据表字段的绑定(1)选取一个编辑框并单击鼠标右键谈出一个快捷菜单。(2)在快捷菜单中单击“建立类向导”选项,弹出类向导对话框。(3).切换到“Member Va
21、riable”选项卡,并在“Class name”下拉列表框中选择“CmySet”。在图中将类名切换为CmyView,出现类成员的列表,其中就包含了全部的编辑框控件的索引编码。(4)选择“入库价格”编辑框,单击“Add Variable”按钮,弹出增加变量对话框,选择所对应的数据表字段成员,建立映射关系l 添加数据:添加前效果图:添加后效果图:增加记录代码:void CMyView:OnButton1() m_pSet-AddNew();UpdateData(true);m_pSet-Update();l 删除数据:删除货物编号为“”之前删除货物编号为“”之后效果图删除记录代码:Deletem
22、_pSet-Delete(); m_pSet-MoveNext(); if(m_pSet-IsEOF() m_pSet-MoveLast; if(m_pSet-IsBOF() m_pSet-SetFieldNull(NULL); UpdateData(FALSE);l 排序数据:排序记录代码:m_pSet-m_strSort=gno;m_pSet-Requery();UpdateData(FALSE);8.结束语经过了这次仓库管理系统的课程设计我从中学到了很多,同时明白了做一个小型软件的步骤和流程.如何让自己设计的软件运用到具体的实际工作中,这是一个关键的环节.还有就是程序设计和运行测试中遇到
23、的问题该如何解决,从解决问题中我也学到了许多平时课本上所没有的知识.当然,能够完成这个仓库管理系统我自己也感觉很有成就感.运用到的开发工具和软件技术:此系统结合货物仓库管理的要求,对Visualc+数据库管理系统、SQL语言的学习和应用,主要完成货物仓库管理系统的需求分析,系统的数据库设计和实现,系统的表单设计,主控程序设计,并由此设计了数据库结构和应用程序。系统运行结果证明,本人设计的货物仓库管理系统可以满足仓库管理者完成仓库管理的日常工作,包括材料的入库,出库以及库存材料信息的管理维护等软件还需要哪些改进: 在编写源程序代码的过程中对语言的运用还需要提高,应使写出来的程序更加简洁,易读懂,
24、更加满足实际工作的需要.要想使做出来的程序更好的利用还需根据实际需要在今后的运用中不断的改进和完善. 信息科学与工程 学院课程设计成绩评价表课程名称:数据库应用课程设计设计题目:仓库管理系统专业:计算机应用技术 班级: 0801 姓名:仵涛 学号:0序号评审项目分 数满分标准说明1内 容思路清晰;语言表达准确,概念清楚,论点正确;实验方法科学,分析归纳合理;结论严谨,设计有应用价值。任务饱满,做了大量的工作。2创 新内容新颖,题目能反映新技术,对前人工作有改进或突破,或有独特见解3完整性、实用性整体构思合理,理论依据充分,设计完整,实用性强4数据准确、可靠数据准确,公式推导正确5规 范 性设计格式、绘图、图纸、实验数据、标准的运用等符合有关标准和规定6纪 律 性能很好的遵守各项纪律,设计过程认真;7答 辩准备工作充分,回答问题有理论依据,基本概念清楚。主要问题回答简明准确。在规定的时间内作完报告。总 分综合意见 指导教师 2010年 11月28 日