仓库管理系统数据库论文文档格式.docx
《仓库管理系统数据库论文文档格式.docx》由会员分享,可在线阅读,更多相关《仓库管理系统数据库论文文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
2.2数据描述
2.2.1静态数据
所谓静态数据,指在运行过程中主要作为参考的数据,它们在很长的一段时间内不会变化,一般不随运行而改变。
本系统中的实体仓库、物资、职工、供应商及其属性属于静态数据,一般不会改变。
2.2.2动态数据
所谓动态数据,包括所有在运行中要发生变化的数据以及在运行中要输入、输出的数据。
本系统中的动态数据包括库存表、入库表和出库表。
2.3数据流图
图1管理员数据流图
图2用户数据流图
2.4E-R图
图3物资及其属性图
图4库存表及其属性图
图5出库表及其属性图
图6供应商及其属性图
图7入库表及其属性图
图8仓库及其属性图
图9职工及其属性图
图10实体及其联系图
2.5数据字典
2.6功能需求
图11系统层次图
2.7功能划分
管理员:
入库操作、出库操作、查询库存信息、入库信息、出库信息、仓库信息、职工信息及供应商信息,更改信息及注册。
用户:
查询该用户的物资的入库、出库及库存情况、更改密码及注册。
2.8功能描述
1、入库操作
通过将要入库的物资信息更改仓库、物资、库存表及入库表。
2、出库操作
通过将要出库的物资信息更改仓库、物资、库存表及出库表。
3、查询
根据管理员的需要查看相关信息,其中包括入库信息、出库信息、库存信息、物资信息、职工信息、仓库信息和供应商信息等。
4、更改信息
4.1增加仓库
4.2删除仓库
4.3更改自己账号的密码
5、注册
1、查询
查询该用户的物资的入库、出库及库存情况
2、更改密码
3、注册
三系统设计
3.1总体设计
仓库管理系统是对物资的入库出库等信息进行记录并查询,包括管理员和用户的操作。
管理员可以对仓库进行出库入库及修改仓库信息,用户只能查看自己物资的相关情况。
以下是对仓库各种操作的流程图。
3.1.1处理流程
以下是管理员和用户操作的流程图,从流程图中能很清楚的看出各种操作的处理流程,为系统实现提供了依据,奠定了基础。
1、管理员的入库操作
图12入库流程图
图13出库流程图
1、查询操作
图14查询的流程图
2、更改密码
图15更改的流程图
3.1.2数据结构设计
在仓库管理系统中,对物资的管理是整个系统运作的关键,是仓库管理、入库操作
出库操作的基础,因此对物资的管理就显得尤为重要。
物资的基本表要设计合理,能涵盖其他操作需要的各种信息,以及对各类信息的限制条件等。
设计好的物资管理表如下表所示:
表1物资表
列名
数据类型
长度
是否允许空
物资号
int
4
NOTNULL,主键
物资名
char
10
NOTNULL
供应商号
类别
每箱单价
float
8
每箱体积
仓库管理是对仓库内部存储的物资进行管理,经过分析,设计出的仓库管理的仓库表如表2所示。
表2仓库表
仓库号
职工号
剩余容量
地址
20
职工是管理仓库的人员,职工表的设计也应该合理,设计好的职工表如下:
表3职工
NOTNULL,主键
电话
11
姓名
密码
物资的各种入库信息应该显示在入库表中,设计好的入库表如下:
表4入库表
入库时间
datetime
数量
物资的各种出库信息应该显示在出库表中,设计好的出库表如下:
表5出库表
出库时间
物资的存放信息应该显示在库存表中,设计好的库存表如下所示:
表6库存表
总数量
供应商负责提供物资,所以供应商表的设计也很重要,设计好的供应商表如下所示:
表7供应商表
供应商名
四系统实现
4.1开发工具和环境
操作系统:
MicrosoftWindowsxp
数据库:
MicrosoftSQLServer2000
编程环境:
MicrosoftVisualStudio2008
4.2系统的实现
4.2.1管理员子系统的设计与实现
管理员可以对仓库进行各种操作,包括入库操作、出库操作、各种查询操作及更改操作。
因为是俩人合作,所以本部分实现入库操作及出库操作。
4.2.1.1数据库的连接:
数据库连接的代码:
stringconnectionString="
DataSource=HP-EA42E52C8880;
IntegratedSecurity=SSPI;
InitialCatalog=仓库管理系统;
UserID=sa;
"
;
SqlConnectionmyConnection=newSqlConnection(connectionString);
myConnection.Open();
4.2.1.2入库操作
执行物资操作后,物资的相关数据就已经改变,所以跟物资相关的仓库、库存表、入库表都有相应的变化。
典型代码如下:
stringstrsql6="
insertinto库存表(物资号,仓库号,总数量)values('
+textBox1.Text+"
'
'
+textBox7.Text+"
+textBox8.Text+"
)"
//------向库存表中填入新项目
SqlCommandmycom=newSqlCommand(strsql6,myConnection);
mycom.ExecuteNonQuery();
stringstrsql8="
insertinto入库表(物资号,仓库号,入库时间,数量)values('
getdate(),'
SqlCommandmycom1=newSqlCommand(strsql8,myConnection);
mycom1.ExecuteNonQuery();
stringstrsql3="
update仓库set剩余容量="
+s3+"
where仓库号="
+textBox7.Text;
SqlCommandmycom3=newSqlCommand(strsql3,myConnection);
mycom3.ExecuteNonQuery();
stringstrsql9="
select物资号,仓库号,数量,入库时间from入库表orderby入库时间"
SqlDataAdapterda5=newSqlDataAdapter(strsql9,myConnection);
DataSetds5=newDataSet();
da5.Fill(ds5);
dataGridView1.DataSource=ds5.Tables[0].DefaultView;
执行入库操作后,将显示入库表的情况,具体界面如下:
图16入库界面
4.2.1.3出库操作
出库操作同入库操作一样要更改与物资有关的信息,比如出库表、仓库及库存表。
stringstrsql1="
insertinto出库表(物资号,仓库号,出库时间,数量)values('
+textBox11.Text+"
+textBox10.Text+"
+textBox9.Text+"
stringstrsql2="
update库存表set总数量="
+s+"
where物资号="
and仓库号="
+textBox10.Text;
stringstrsql3="
select每箱体积,剩余容量from物资,仓库where物资号="
stringstrsql4="
+s1+"
4.2.2用户子系统的设计与实现
用户管理的权限比较小,只能查询自己所有物资的出库、入库及库存情况,还可以更改密码。
4.2.2.1用户查询
用户查询操作是只针对用户物资的操作,即只可以查看自己物资的改变情况如:
出库信息、入库信息、库存信息及物资信息。
select供应商.供应商号,物资.物资号,物资名,类别,每箱体积,每箱单价from供应商,物资where供应商.供应商号=物资.供应商号and供应商.供应商号="
+Form1.username;
典型界面:
图17用户查询界面
4.2.2.2用户修改密码
修改密码的典型代码:
stringsendStrSQL1="
update供应商set密码="
+textBox3.Text+"
where供应商号="
+textBox1.Text;
五结束语
经过几个星期的努力终于把仓库管理系统做完了,通过做这次课程设计,我对数据库系统及sql语句和c#语言有了更深的认识和理解,把理论知识和实践结合起来,使理论知识得到了运用,同时自己也掌握了知识。
因为是两个人共同设计,所以还学会了沟通及团队合作,通过自己亲手设计,印象深刻,真正理解所学知识。
经过自己亲手实践后,就会真正明白实践是检验真理的唯一标准。
在设计的过程中,我参考了很多有关数据库和.c#的资料,掌握了很多课堂上没有的知识,提高了自己的能力,了解了软件开发的过程,受益匪浅。
同时也发现了自己的不足之处并且改正,为以后的工作和学习打下了良好的基础。
参考文献
[1]李春葆,曾慧.SQLServer2000应用系统开发教程.清华大学出版社.2008
[2]王珊,萨师煊.数据库系统概论.高等教育出版社.2008
[3]施伯乐、丁宝康、汪卫.数据库系统教程(第2版).高等教育出版社.2003.
[4]HectorGarcia-MolinaJefferyD.UllmanJenniferWidom著、岳丽华等译.数据库系统全书.机械工业出版社.2003.