数据库设计张海军41 牟柯达33Word格式.docx
- 文档编号:18986527
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:38
- 大小:815.83KB
数据库设计张海军41 牟柯达33Word格式.docx
《数据库设计张海军41 牟柯达33Word格式.docx》由会员分享,可在线阅读,更多相关《数据库设计张海军41 牟柯达33Word格式.docx(38页珍藏版)》请在冰豆网上搜索。
据通用库存管理系统的分析,假设库存管理部门的组织机构图如图1所示:
图1组织结构设置图
2.管理职能分析
由组织结构设置关系和客观分析,可以得到系统的管理职能图,如图2所示:
图2管理职能
3.业务流程分析
现行库存物资管理系统的业务流程图如图3所示:
图3业务流程图
数据分析
1.用户与设计需求
(1)信息要求
由背景资料可知本系统必须存储商品信息和出入库信息,具体分析就是:
商品名称、生产厂家、型号、规格、数量、日期时间、出入库单位名称、经手人姓名、库存量。
(2)处理要求
用户的要求:
1.能够显示商品的基本信息:
商品名称、生产厂家、型号、规格、库存量。
2在进行商品出入库信息处理时,能够方便、快捷地将原始出入库单据的信息录入系统。
3.实现按商品名称、出入库日期的查询。
4.实现分别按日、月、年对出入库商品数量的统计。
.
响应时间的要求:
(国际标准)
处理方式:
批处理。
(3)安全性与完整性要求
安全性设计要求:
数据库安全级别:
C1自主安全保护(DiscretionarySecurityProtection)[TCSEC/TDI标准]
完整性设计要求(数据库的完整性约束条件):
1.出库数量<
库存量
2.库存量=原始库存+入库数量-出库数量(原始库存>
=0)
3.当原始库存→0时,有库存量=入库数量–出库数量
4.库存量>
=0
5.入库数量>
6.出库数量>
7.各属性值!
=null
8.商品基本信息视图中的“库存量”=∑f(商品编号i,仓库编号j)(i,j=0,1,2…n)其中,f(商品编号i,仓库编号j)表示由商品编号i和仓库编号j所唯一确定的库存量。
此表达式的意思是在视图的“库存量”属性显示该商品在所有仓库中库存量的总和。
备注:
原始库存,即在系统建立之前存入库的,并且原始凭证丢失或损坏或与实际库存情况不符的那部分商品库存。
(4)数据流图(DFD)
1.顶层数据流程图如图4所示:
图4顶层DFD
“1”:
商品入库单据
“2”:
商品出库单据
“3”:
商品基本信息
“4”:
出入库信息和商品基本信息的查询、统计结果
2.第一层数据流程图如图5所示:
图5中的数据流“1,2,3,4”与图4中的数据流“1,2,3,4,”相同。
图5第一层DFD
3.第二层数据流程图如图6所示:
现对图6中的数据流说明如下:
录入数据库的商品信息
录入数据库的仓库信息
录入数据库的生产厂家信息
进行商品入库业务时所填制的纸质单据
“5”:
进行商品出库业务时所填制的纸质单据
“6”:
将商品信息、仓库信息、生产厂家信息通过连接等操作实现商品信息查询与统计
“7”:
将手工的商品入库凭证、商品出库凭证转化为数据库中的电子记录,并通过连接等操作实现商品出入库信息的查询与统计
“8”:
将商品信息、商品出入库信息的查询与统计结果输出至系统视图并显示
图6第二层DFD
2.数据字典
(1)数据项
01商品编号nchar(10)[主键]
02商品名称nchar(10)
03厂家编号nchar(10)[主键]
04厂家名称nchar(10)别名:
生产厂家
05型号nchar(10)
06规格nchar(10)
07库存量int
08仓库编号nchar(10)[主键]
09仓库名称nchar(10)
10单位编号nchar(10)[主键]
11单位名称nchar(10)别名:
出库单位/入库单位
12经手人姓名nchar(10)
13入库时间datetime
14入库数量int
15出库时间datetime
16出库数量int
(2)数据结构
01商品表
02商品编号nchar(10)[主键]
02商品名称nchar(10)
02型号nchar(10)
02规格nchar(10)
01仓库表
02仓库编号nchar(10)[主键]
02仓库名称nchar(10)
01生产厂家表
02厂家编号nchar(10)[主键]
02厂家名称nchar(10)
01出/入库单位表
02单位编号nchar(10)[主键]
02单位名称nchar(10)
02经手人姓名nchar(10)
01商品-仓库表
02商品编号nchar(10)[外键]参照主表:
商品表
02仓库编号nchar(10)[外键]参照主表:
仓库表
02库存量int
01商品-生产表
02商品编号nchar(10)[外键]参照主表:
02厂家编号nchar(10)[外键]参照主表:
生产厂家表
01商品-入库表
02单位编号nchar(10)[外键]参照主表:
出/入库单位表
02入库时间datetime[主键]
02入库数量int
01商品-出库表
02出库时间datetime[主键]
02出库数量int
(3)数据流
1.数据流名:
说明:
将商品表和仓库表通过商品-仓库表连接,然后再与生产厂家表通过商品-生产表连接,并输出至系统终端显示。
流量:
实时查询、更新,基本无限制
来源:
商品表、仓库表、商品-仓库表、生产厂家表、商品-生产表
去向:
系统终端视图
2.数据流名:
商品入库信息
将商品表和出/入库单位表通过商品-入库表连接,然后再与生产厂家表通过商品-生产表连接,并输出至系统终端显示。
最大(MAX)50次/日
平均(AVG)30次/日
商品表、出/入库单位表、商品-入库表、生产厂家表、商品-生产表
3.数据流名:
商品出库信息
将商品表和出/入库单位表通过商品-出库表连接,然后再与生产厂家表通过商品-生产表连接,并输出至系统终端显示。
商品表、出/入库单位表、商品-出库表、生产厂家表、商品-生产表
(5)数据存储
1.手工凭单:
入库单据、出库单据
存取方式:
手工填制
存取频度:
随填随存、随填随取
真实的出/入库业务
录入系统的数据库
2.计算机文档:
[基本表]商品表、出/入库单位表、商品-出库表、商品-入库表、生产厂家表、商品-生产表、仓库表、商品-仓库表
[视图]商品基本信息视图、商品入库信息视图、商品出库信息视图
基本表:
1商品表
批处理、检索、更新
最大(MAX)50次/日平均(AVG)30次/日
录入系统的数据库的数据
与其他基本表连接
2出/入库单位表
3商品-出库表
4商品-入库表
5生产厂家表
6商品-生产表
7仓库表
8商品-仓库表
视图:
1商品基本信息视图
检索、更新
基本无限制,视具体情况而定
数据库中的基本表
在系统终端显示
2商品入库信息视图
3商品出库信息视图
(6)处理过程
1.商品基本信息显示
用于显示商品的基本信息
输入:
输出:
2.商品入库信息显示
用于显示商品入库信息
商品表、生产厂家表、商品-生产表、出/入库单位表、商品-入库表
3.商品出库库信息显示
商品表、生产厂家表、商品-生产表、出/入库单位表、商品-出库表
具体处理过程见数据流图(DFD)。
二、概念结构设计
本系统的概念结构设计采用自顶向下方法。
即首先定义全局概念结构的框架,然后逐步细化,如图7所示:
图7本系统概念模式的自顶向下策略
系统E-R图的设计和实现:
1.实体及其属性图
根据数据抽象得到实体及其属性图,如图8所示:
图8实体及其属性图
2.实体及其联系图
根据实体及其属性图设计实体及其联系图,如图9所示:
图9实体及其联系图
3.完整的实体-联系图(E-R图)
合并实体及其属性图和实体及其联系图,得到完整的实体-联系图(E-R图),如图10所示:
图10完整的实体-联系图(E-R图)
4.视图的集成
本系统属于小型管理信息系统,E-R图很简单,在设计之初便完成了集成,无需多次集成。
三、逻辑结构设计
1.E-R图向关系模型的转换以及数据模型的优化
根据系统的E-R图转换关系模型如下,规范化水平:
BCNF
仓库(仓库编号,仓库名称)
生产厂家(厂家编号,厂家名称)
商品(商品编号,名称,型号,规格)
出入库单位(单位编号,单位名称,经手人姓名)
商品-生产(商品编号,厂家编号)
商品-仓库(商品编号,仓库编号,库存量)
商品-入库(商品编号,单位编号,入库时间,入库数量)
商品-出库(商品编号,单位编号,出库时间,出库数量)
有下划线的属性为主键或外键
本系统数据库各基本表的逻辑关系如图11所示:
图11各基本表的逻辑结构图
2.设计用户子模式
(1)使用符合用户习惯的别名
厂家名称nchar(10)别名:
单位名称nchar(10)别名:
(2)定义用户视图(View)
商品基本信息视图(商品名称,生产厂家,型号,规格,库存量)
商品入库信息视图(商品名称,生产厂家,型号,规格,入库数量,入库单位,经手人姓名,入库时间)
商品出库信息视图(商品名称,生产厂家,型号,规格,出库数量,出库单位,经手人姓名,出库时间)
4.系统逻辑模型
系统逻辑模型如图12所示:
图12系统逻辑模型
四、数据库的物理设计
1.关系模式存取方法的选择
本系统采用默认存取方法:
B+树索引方法。
2.确定数据的存储结构
本系统采用顺序存储和链式存储相结合的存储结构。
3.确定系统配置
本系统采用单机用户操作方式,基本配置如下:
机型:
ACER
光驱:
DVD-R
硬盘:
540MB
内存:
8MB
显示器:
LED
打印机:
HP
操作系统:
WindowsXP、Windows7、Windows2000
软件环境:
.NETCLR
安装地点:
仓库办公室
4.评价物理结构
综合存取时间、存储空间利用率、维护代价3个方面的因素,本系统物理结构评级为:
中上。
五、数据库的实施和维护
1.数据的载入和应用程序的调试
本系统采用VisualC#.NET开发,在VisualStudio2010环境下编写代码,运行调试。
使用MicrosoftSQLServer2005创建并连接数据库。
2.数据库的试运行
在载如数据后,跟踪观测数据库运行的情况,因为系统规模较小,设计时考虑较周全,没有发现异常状况。
3.数据库的运行和维护
在数据库运行阶段,对数据库经常性的维护工作主要是由DBA完成的,包括:
1数据库的转储和恢复
2数据的安全性、完整性控制
3数据库性能的监督、分析和改造
4数据库的重组织与重构造
附录1:
系统截图
主界面
商品入库信息窗口
商品出口信息窗口
基本信息录入窗口
入库信息查询窗口
出口信息查询窗口
MessageBox
出入库信息统计查询窗口
附录2:
部分程序的代码清单
连接类
classdbconn
{
stringsql="
datasource=MOONHOW-E3BEA7B;
initialcatalog=库存管理系统;
IntegratedSecurity=True"
;
publicSqlConnectiongetconn()
SqlConnectionmycon=newSqlConnection(sql);
returnmycon;
}
操作类
classdboperation
dbconnconnstr=newdbconn();
//返回数据集ds
publicDataSetgetdataset(stringsql,stringtable)
SqlConnectionconn=connstr.getconn();
conn.Open();
SqlDataAdaptersda=newSqlDataAdapter(sql,conn);
DataSetds=newDataSet();
sda.Fill(ds,table);
conn.Close();
returnds;
//执行Dsql
publicvoidsqlcmd(stringsqlstr)
SqlConnectionconn=connstr.getconn();
SqlCommandscmd=newSqlCommand(sqlstr,conn);
scmd.ExecuteNonQuery();
//返回datatable
publicDataTableGetTable(stringsql)
DataTabledt=newDataTable();
sda.Fill(dt);
returndt;
主窗体
publicForm1()
InitializeComponent();
privatevoid入库信息查询ToolStripMenuItem_Click(objectsender,EventArgse)
Fm_r_chaxunf=newFm_r_chaxun();
f.Show();
privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)
this.Close();
privatevoid入库信息录入ToolStripMenuItem_Click(objectsender,EventArgse)
Fm_l_rukulk=newFm_l_ruku();
lk.Show();
privatevoid出库信息录入ToolStripMenuItem_Click(objectsender,EventArgse)
Fm_l_chukulc=newFm_l_chuku();
lc.Show();
privatevoid基本信息录入ToolStripMenuItem_Click(objectsender,EventArgse)
Fm_jibenj=newFm_jiben();
j.Show();
privatevoid出库信心查询ToolStripMenuItem_Click(objectsender,EventArgse)
Fm_c_chaxunc=newFm_c_chaxun();
c.Show();
privatevoid入库信息统计ToolStripMenuItem_Click(objectsender,EventArgse)
Fm_tf=newFm_t();
}
提示窗体代码
publicFm_tisi()
privatevoidFm_tisi_Load(objectsender,EventArgse)
this.label1.Text="
按年统计yyyy按月统计yyyy-mm按天统计yyyy-mm-dd"
统计窗体代码
publicpartialclassFm_t:
Form
publicFm_t()
privatevoidbutton1_Click(objectsender,EventArgse)
stringtime=this.textBox1.Text.Trim();
dbconnmyconn=newdbconn();
SqlConnectionconn=myconn.getconn();
select入库单位,入库数量from商品入库信息视图where入库时º
间like'
%"
+time+"
%'
"
dataGridView1.DataSource=dt;
sql="
select出库单位,出库数量from商品出库信息视图where出库时间like'
"
SqlDataAdaptersda1=newSqlDataAdapter(sql,conn);
DataTabledt1=newDataTable();
sda1.Fill(dt1);
dataGridView2.DataSource=dt1;
privatevoidtextBox1_MouseEnter(objectsender,EventArgse)
if(@public.i==1)
Fm_tisitis=newFm_tisi();
tis.Show();
@public.i++;
基础信息输入窗口表
publicpartialclassFm_jiben:
publicFm_jiben()
this.tb_cjbh.Text="
this.tb_cjmc.Text="
this.tb_ckbh.Text="
this.tb_ckmc.Text="
this.tb_dwbh.Text="
this.tb_dwmc.Text="
this.tb_gg.Text="
this.tb_jbrxm.Text="
this.tb_k
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库设计张海军41 牟柯达33 数据库 设计 海军 41 柯达 33