数据库课程设计报告.DOC

上传人:国*** 文档编号:807811 上传时间:2018-11-02 格式:DOC 页数:10 大小:293KB
下载 相关 举报
数据库课程设计报告.DOC_第1页
第1页 / 共10页
数据库课程设计报告.DOC_第2页
第2页 / 共10页
数据库课程设计报告.DOC_第3页
第3页 / 共10页
数据库课程设计报告.DOC_第4页
第4页 / 共10页
数据库课程设计报告.DOC_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、数据库课程设计报告仓储管理系统2008 年 9 月 10 日一、 系统简介分数教师签名题目:采用 B/S 或 C/S 模式实现一个仓库库存货品信息管理系统软件。仓库的日常工作包括货品的入库和出库。入库要由采购人员提供进货单,进货单经过审核人员审核验收后方能进行货品入库。出库要由销售人员提供出货单,经过审核人员审核批准后才能提货。当销售人员需要提货而货品的库存量不足时可先进行缺货登记,当有相应货品入库时,按缺货登记时间顺序处理出货请求。要求: 实现库存货品信息的管理。 实现进货单的填写、修改、审核和查询等功能。 实现出货单的填写、修改、审核和查询等功能。 实现缺货登记、查询和处理。 根据不同用户

2、身份提供不同的操作权限和界面。应用背景:随着数据处理的不断进步和计算机网络的迅速发展,使数据库应用系统不仅在功能而且在结构上都有了深刻的变化,而且运用在生活的每一个方面。通过学习关系代数,关系演算,函数依赖,关系模式分解,关系模式的规范化让我们建立了扎实的关系数据库理论基础。如果仓储管理还停留在人工管理或文伯系统阶段,无疑将浪费许多人力与物力,而且有可能造成管理不善而使资料冗余。现在此用 VC+与 SQL Server 2000 做了一个仓储管理系统,由于急于准备考研,程序中代码累赘,数据表的建立也难免有欠周处,即使找到了小 BUG,也未做修改了,请谅。应用环境:开发工具:Windows xp

3、 下的 Microsoft visual C+6.0;数据库管理系统:SQL Server 2000。二、 数据库设计数据库登陆要判断身份,根据身份有不同的登陆界面,能进行不同的操作。采购员可以添加、编辑采购单;销售员可以添加、编辑销售单;审核员审核采购表、销售表,根据货单更改入库信息,审核员还可以进行货物登记、注销。三种身份都可以查看库存。没有缺货处理。仓库实体构造我设计比较简单:货物(goods),采购单(note_in),销售单(note_out),另外一个实体为用户(user_pswd),采购单/销售单 与货物有一对多关系,有表(buy/sell)。本来还有一个库存表,但是库存设计简单

4、的话可以并到货物表里面去(这个设计不太合理个,人认为库存中货物应该一货物号和入库时间做主类,以区分不同时期入库的货物,但是在此次试验中可以做些简化,不必这么复杂)。三、 概念结构设计 整个的 E-R 图如下:货物采购 销售采购单 销售单库存审核 审核由于库存和货物合成一个,因此,货物和货单有多个关系 四、 逻辑结构设计货物(编号,名称,库存)进货单(编号,进货员,审核员,采购日期,审核情况)出货单(编号,销售号,审核员,销售日期,审核情况)用户(用户名,用户密码,身份)进货(进货单, 货物号,数量,价格,发货日期)出货(出货单, 货物号,数量,价格,发货日期)五、 程序设计、系统的模块结构图登

5、录界面入货人 出货人员审核人进货单 出货单货单审核登陆时选择用户身份登陆,不同用户不同界面及功能。、各模块流程图、主要算法简析和用户界面1、与数据源连接:以连接采购单为例/_ConnectionPtr 主要是一个连接接口,取得与数据库的连接_ConnectionPtr m_pConnection_;_RecordsetPtr MySet;/连接到数据库m_pConnection_.CreateInstance(_uuidof(Connection);CString sql_;sql_.Format(“DSN=ZZ;UID=sa;PWD=123“);_bstr_t sqll=sql_;m_pCo

6、nnection_-Open(sqll,“,“,-1);_bstr_t strSQL(“SELECT * FROM NOTE_IN“);int i = 0;try/读取数据记录MySet.CreateInstance(_uuidof(Recordset); MySet = m_pConnection_-Execute(strSQL,NULL,adCmdText);_variant_t Holder;while(!MySet-adoEOF) Holder = MySet-GetCollect(“NOTE_NO“);if(Holder.vt!=VT_NULL)m_list1.InsertItem(

7、i,(char*)(_bstr_t)Holder);Holder = MySet-GetCollect(“BUYER“);if(Holder.vt!=VT_NULL)m_list1.SetItemText(i, 1, (char*)(_bstr_t)Holder);Holder = MySet-GetCollect(“CHECKER“);if(Holder.vt!=VT_NULL)m_list1.SetItemText(i, 2, (char*)(_bstr_t)Holder);Holder = MySet-GetCollect(“BUY_DATE“);if(Holder.vt!=VT_NUL

8、L)m_list1.SetItemText(i, 3, (char*)(_bstr_t)Holder);Holder = MySet-GetCollect(“AUDITING“);if(Holder.vt!=VT_NULL)m_list1.SetItemText(i, 4, (char*)(_bstr_t)Holder);MySet-MoveNext(); catch(_com_errorm_list1.SetRedraw(TRUE);return; m_list1.SetRedraw(TRUE); 基本操作用户界面如下:采购员操作界面没审核的数据并且查看库存情况销售员操作界面没有审核并且查看

9、库存的情况审核员操作界面审核采购单 1 后的审核情况:审核和采购界面个一个审核销售单 1 后的情况(没有缺货处理,库存为负为处理)其他各种操作略系统漏洞:未处理缺货,允许库存为负;采购单的采购员为验证身份是否为采购员,销售单、审核同样存在该问题7、数据库设计:六、 总结由于以前总没有好好的做过 GUI 编程,所以开始编程时出了很多的问题,经常图形做了修改后出了各种问题,然后被我瞎改弄的同步过编译,或者出现不允许操作,直接操作错误(没有编译错误),很难改正。到最后只有重做。GUI 的了解花了我几天时间。然后在熟悉以后怎么设计出有不同权限的界面,有那些权限该设计那些图等等也费了我不少时间。数据库 E-R 图的设计我不太清楚,建表完全是在编写的时候一边写程序一边修改表的结构、内容一边修改界面设计。程序的错误调试最开始我完全不会,总是找同学帮忙,但是最后连我认为最难改的错误我都改出来了。五编译错误,但是运行就出错,我一句一句的屏蔽修改,总算发现错误。数据库的操作好像不同的书上主要有两种不同的连接方式,我只用了并且只会用我使用的方式。我个人最开始对数据库课设的目标就是初步学会 GUI 编程,学会数据库编程。虽然我的程序没有缺货处理,功能并不完善,但是它的表是我慢慢想、慢慢修改设计出来的,代码是一行一行弄出来的(有参考别人代码),数据库课设的整个过程我都有一个比较好的了解。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。