数据库仓库管理系统课程设计.docx
- 文档编号:23233735
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:27
- 大小:681.95KB
数据库仓库管理系统课程设计.docx
《数据库仓库管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《数据库仓库管理系统课程设计.docx(27页珍藏版)》请在冰豆网上搜索。
数据库仓库管理系统课程设计
课程设计
课程设计名称:
数据库应用课程设计
专业班级:
信息管理与信息系统
学生姓名:
***
学号:
**********
*******
课程设计时间:
2011.12.20-2010.12.24
计算机应用技术专业课程设计任务书
学生姓名
专业班级
学号
题目
仓库管理系统
课题性质
A.工程设计
课题来源
D.自拟课题
指导教师
同组姓名
无
主要内容
随着市场高速的发展,其经营管理也变得愈加复杂,早期的人工管理的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。
仓库形态具有种种优点,但在目前状况下,它仍存在零售业企业所共有的落后的一面,如:
不能有效地管理每种商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,而且在仓库管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。
而该系统则可以方便的实现商品的录入,查询,添加,删除等功能。
使操作更简便效率
任务要求
综合运用所学的数据库基本知识,并能通过查阅相关文献材料,独立完成该课题的设计开发工作。
要求根据本课题设计出合理的数据结构,并实现商品的录入,查询,修改,删除等功能。
前台开发工具可采用VB.net或其他开发工具;后台数据库选用SQLServer。
参考文献
陶宏才.《数据库原理及设计》.北京:
清华大学出版社,2001
范立南.《SQLServer2000实用教程》.北京:
清华大学出版社,2003
李香敏.《SQLServer2000编程员指南》.北京:
北京希望电子出版社,2004
王丙义,胡鸿.数据库原理与VisualFoxpro应用.北京:
中国铁道出版社,2005
审查意见
指导教师签字:
教研室主任签字:
2010年11月16日
7.应用程序实现………………………………………………………………………………12
1.问题描述
1.1背景
仓库是工厂的一个重要的中转站,仓库里能储存各种各类的货物,货物的流动性比较大,需要处理的数据较多,直接有人工检索信息和更新仓储信息比较繁琐,为了能提高仓库的管理效率,设计适合仓储管理的数据库系统是很重要的。
1.2功能要求
工厂需要一个能够实现管理仓储功能的数据库系统,该系统的用户为仓库管理员,同时他也是系统管理员。
系统的主要功能如下:
1)仓库入库管理:
主要是管理员对进入仓库的货物进行登记,包括货物号、货物名、货物数量、货物价格、货主以及仓库号等。
以便统一管理,当同一货主的同种货物入库时记录追加,同时也要记录仓库入库的日志信息。
2)仓库提货管理:
当货主提走货物时进行该管理,在货物出库时,进行登记,登记内容货物号、货物名、货物数量、货主、货物价格、日期等。
3)仓库查询管理:
用户可按货物号、按货物名、按货主、仓库号等进行查询。
这些查询主要是用户西药知道货物资料是进行,由于只进行查询操作,所以数据以只读的形式出现。
4)货物信息维护功能:
主要对货物的基本资料和信息进行维护。
其中包括货物的价格、货物的种类的变化等。
2.需求分析
2.1分析模块
1)仓储管理员的系统功能模块
图2.1-1
2)用户查询模块
图2.1-2
2.2数据流
数据流图表达了数据和处理的关系,根据用户的需求分析和仓库管理系统的需求,得出如下图1-1所示的仓库管理数据流图。
图2.2—1仓库管理系统数据流
3、数据字典
1)数据项
数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描述,仓库管理的主要数据见下表。
货物入库表:
序号
字段
别名
数据类型
数据长度
码
1
huowuhao
货物编号
char
10
Y
2
huowuming
货物名称
char
20
N
3
xinghao
货物型号
char
10
N
4
shuliang
货物入库存数量
char
10
N
5
danjia
货物入库单价
char
10
N
6
zongjia
货物入库时价格
char
10
N
7
rukushijian
货物入库时间
char
10
N
8
beizhu
货物备注信息
char
20
N
货物出库表:
序号
字段
别名
数据类型
数据长度
码
1
huowuhao
货物编码
char
10
Y
2
huowuming
货物名
char
20
N
3
xinghao
货物出库型号
char
10
N
4
shuliang
货物出库数量
char
10
N
5
danjia
货物出库单价
char
10
N
6
zongjia
货物出库总价
char
10
N
7
chukushijian
货物出库时间
char
10
N
8
beizhu
货物出库备注
char
20
N
序号
字段
别名
数据类型
数据长度
码
1
bianhao
商品编号
char
10
Y
2
shangpinming
商品名
char
20
N
3
xinghao
商品型号
char
10
N
4
changjia
商品生产厂家
char
20
Y
4
changzhi
商品生产地
char
20
N
5
riqi
商品生产日期话
char
10
N
6
beizhu
商品备注
char
20
N
仓库商品信息信息表:
商品库存信息:
序号
字段
别名
数据类型
数据长度
码
1
huowuhao
货物编号
char
10
Y
2
huowuming
货物名
char
20
N
3
xinghao
货物型号
char
10
N
4
shuliang
货物数量
char
10
N
4
danjia
货物单价
char
10
N
5
zongjia
货物总价话
char
10
N
6
beizhu
货物备注
char
20
N
3.概念结构设计
3.1E-R图
仓库管理信息系统可以划分的实体有:
货主信息实体、货物信息实体、仓库信息实体、提货人信息实体,货物入库记录信息实体、货物出库记录信息实体,用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出库信息实体E-R图:
图3-6出库信息实体E-R图
3.1.7总的信息实体E-R图:
1
UpdateData(true);
m_pSet->Update();
1
图3-7总的信息实体E-R图
4.逻辑结构设计
E-R图转换成关系模式。
货主(货主代号,货主姓名,货主电话)
货物(货物编号,货物名称,货物所属类别)
入库(货物编号,货物入库时间,货物入库时价格,货物入库数量,货主编号,仓库号)
出库(货物编号,货物出库数量,货物出库价格,货物出库时间,提货人编号,仓库号)
仓库(仓库号,仓库容量)
提货人(提货人代号,提货人姓名,提货人电话,提货人地址)
5.存储过程设计
5.1创建列表
创建货主表P:
CREATETABLEP(PidintPrimarykey,
Pnamechar(50)notnull,
Ptelchar(16));
创建货物信息表Shop:
CREATETABLEShop(ShopIdintPrimarykey,
Shopnamechar(50)notnull,
Shopibchar(50)notnull);
创建入库表Comehouse:
CREATETABLEComehouse(ShopIdintnotnull,
Cshoptimechar(30)notnull,
Cshoppricechar(8)notnull,
CShopmumintnotnull,
Pidintnotnull,
HouseIDint);
创建出库表Outhouse:
CREATETABLEOuthouse(ShopIdintnotnull,
Goshopnumint,
Goshoppricechar(8),
Gotimechar(20)notnull,
GoIdint,
HouseIDint);
创建仓库表House:
CREATETABLEHouse(HouseIDintPrimarykey,
Housemunint);
创建提货人表Goperson:
CREATETABLEGoperson(GoIdintPrimarykey,
Gonamechar(50)notnull,
Gotelchar(10),
Goaddresschar(50));
5.2储存过程
1)创建一个查询存储过程
createprocedurecomehouse_p
as
select*
fromcomehouse
go
execcomehouse_p
2)在comeshop插入一个元组
createprocedurecomeshop_1
as
insert
intocomeshopvalues('080601','20100101','2','1000','301')
5.3建立索引
为comeshop表建立货物编号索引
createclusteredindexcomeshoponComehouse(ShopId)
为outshop表建立货物编号索引
createclusteredindexoutshoponouthouse(ShopId)
6.触发器设计
1)当删除comehouse表中某一货主基本信息时触发p表,删除相应的记录。
createtriggercomehouse_delete
oncomehouse
fordelete
as
deletep
fromdeleted
wherecomehouse.pid=p.pid;
2)当删除outhouse表中某一货主基本信息时触发Goperson表,删除相应的记录。
createtriggerouthouse_delete
onouthouse
fordelete
as
deleteGoperson
fromdeleted
whereouthouse.GoId=Goperson.Goid;
7.应用程序实现
7.1建立ODBC数据源
(1)打开控制面板,双击控制面板上的“管理工具”图标,然后双击“管理工具”窗口中的“数据源(ODBC)”图标,弹出“ODBC数据源管理器”对话框,如图1所示。
图1“ODBC数据管理器”对话框
(2)建立一个系统DSN数据源,选择“系统DSN”选项卡,然后单击“添加”按钮,弹出如图2对话框。
在如图2对话框中选择要连接的数据库管理系统的驱动程序。
这里选择“SQLServer”,单击“完成”按钮。
图2“创建数据源”对话框
(3)连接到的数据库服务器的名字。
在“名称”文本框中输入数据源的名字,在“说明”文本框中输入次数据源的说明信息,在“服务器”下拉列表框中指定要连接的数据库服务器的名字,选择用户登录到的数据库服务器的身份验证方式和用户登录表示,然后单击“下一步”按钮,弹出图3所示对话框。
在如图7-5所示的对话框中,选择用户登录的默认数据库,单击“下一步”按钮
图3选择用户登录的默认数据库
(4)指定用于SQLServer消息的语言、字符数据转换和SQLServer驱动程序是否应当使用区域设置,单击“完成”按钮,弹出如图4所示的对话框。
图4新建ODBC数据源的描述
(5)对话框中显示了所定义的OBDC数据源的描述信息,单击“测试数据源”按钮,可以测试一下所建立的数据源是否成功。
建立好的OBDC数据源会列在“OBDC数据源管理器”窗口中,单击“确定”按钮,关闭“OBDC数据源管理器”窗口。
7.2VisualC++与数据库连同的应用程序
1.创建应用程序框架
(1)打开VisualC++主控界面。
单击“文件/新建”菜单项,在弹出的对话框中选择“新建工程类别”类型。
在“工程类型”列表框中选择“MFCAppWizard(exe)”工程类型。
(2)输入工程名称为“仓库管理系统”,并选择合适的Win32平台类型。
(3)单击确定,进入文档类型设置。
(4)选择单文档类型,选择一个单文档的应用程序,选择文档/查看信息结构支持。
(5)单击“下一步”,进入第二步,出现对话框,需要用户对数据库的应用做一些相关的选择。
图5程序框架设置
(6)选择“查看数据库不适用文件支持”选项,该数据源就是我们在前面创建的“仓库管理系统”。
(7)单击“DataSource”按钮,弹出如图6所示对话框。
在“DataSource”选项区域中的“ODBC”下拉列表中选择“仓库管理系统”。
图6
(8)单击“OK”,选择数据表就是文档界面所使用的数据表,选择其中一个,如图7所示。
图7
单击OK,按钮确单击“完成”出现如图8所示的工程向导全部设置过程的信息。
图8
(9)单击确定按钮,出现如图10所示的应用程序的基本框架
7.3主窗体的基本制作
(1).在工程框架的主窗体中IDD_MY_FORM中加入六个静态的标签控制。
(2)鼠标右键单击静态标签控制,出现快捷菜单。
(3)在快捷菜单中单击“属性”选项,弹出把奥前控制的文本属性设置对话框。
图9
(4)在窗体中加入六个编辑框。
7.4编辑框控件与数据表字段的绑定
(1)选取一个编辑框并单击鼠标右键谈出一个快捷菜单。
(2)在快捷菜单中单击“建立类向导”选项,弹出类向导对话框。
(3).切换到“MemberVariable”选项卡,并在“Classname”下拉列表框中选择“CmySet”。
在图中将类名切换为CmyView,出现类成员的列表,其中就包含了全部的编辑框控件的索引编码。
(4)选择“入库价格”编辑框,单击“AddVariable”按钮,弹出增加变量对话框,选择所对应的数据表字段成员,建立映射关系
●添加数据:
添加前效果图:
添加后效果图:
增加记录代码:
voidCMyView:
:
OnButton1()
{
m_pSet->AddNew();
UpdateData(true);
m_pSet->Update();
}
●删除数据:
删除货物编号为“1080601”之前
删除货物编号为“1080601”之后效果图
删除记录代码:
Delete
m_pSet->Delete();
m_pSet->MoveNext();
if(m_pSet->IsEOF())
m_pSet->MoveLast;
if(m_pSet->IsBOF())
m_pSet->SetFieldNull(NULL);
UpdateData(FALSE);
●排序数据:
排序记录代码:
m_pSet->m_strSort="gno";
m_pSet->Requery();
UpdateData(FALSE);
8.结束语
经过了这次仓库管理系统的课程设计我从中学到了很多,同时明白了做一个小型软件的步骤和流程.如何让自己设计的软件运用到具体的实际工作中,这是一个关键的环节.还有就是程序设计和运行测试中遇到的问题该如何解决,从解决问题中我也学到了许多平时课本上所没有的知识.当然,能够完成这个仓库管理系统我自己也感觉很有成就感.
运用到的开发工具和软件技术:
此系统结合货物仓库管理的要求,对Visual c++数据库管理系统、SQL语言的学习和应用,主要完成货物仓库管理系统的需求分析,系统的数据库设计和实现,系统的表单设计,主控程序设计,并由此设计了数据库结构和应用程序。
系统运行结果证明,本人设计的货物仓库管理系统可以满足仓库管理者完成仓库管理的日常工作,包括材料的入库,出库以及库存材料信息的管理维护等
软件还需要哪些改进:
在编写源程序代码的过程中对语言的运用还需要提高,应使写出来的程序更加简洁,易读懂,更加满足实际工作的需要.要想使做出来的程序更好的利用还需根据实际需要在今后的运用中不断的改进和完善.
信息科学与工程学院课程设计成绩评价表
课程名称:
数据库应用课程设计
设计题目:
仓库管理系统
专业:
计算机应用技术班级:
0801姓名:
仵涛学号:
200838940110
序号
评审项目
分数
满分标准说明
1
内容
思路清晰;语言表达准确,概念清楚,论点正确;实验方法科学,分析归纳合理;结论严谨,设计有应用价值。
任务饱满,做了大量的工作。
2
创新
内容新颖,题目能反映新技术,对前人工作有改进或突破,或有独特见解
3
完整性、实用性
整体构思合理,理论依据充分,设计完整,实用性强
4
数据准确、可靠
数据准确,公式推导正确
5
规范性
设计格式、绘图、图纸、实验数据、标准的运用等符合有关标准和规定
6
纪律性
能很好的遵守各项纪律,设计过程认真;
7
答辩
准备工作充分,回答问题有理论依据,基本概念清楚。
主要问题回答简明准确。
在规定的时间内作完报告。
总分
综
合
意
见
指导教师2010年11月28日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 仓库 管理 系统 课程设计