ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:4.34MB ,
资源ID:11582844      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11582844.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计仓库管理系统.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计仓库管理系统.docx

1、数据库课程设计仓库管理系统福 建 工 程 学 院课程设计课 程: 数据库系统概论 题 目: 仓库管理系统 专 业: 计算机科学与技术 班 级: 座 号: 姓 名: 2012年 6月 12日一、系统定义 随着各个公司经营的范围慢慢扩大,业务流量比较大,需要处理的数据比较多,为了能对公司的业务进行有效的管理,减少手工操作的繁琐,同时可以根据公司业务的运营情况,分析出公司发展的潜在信息,顺应时代的发展变化,使管理更加简单化。 二、需求分析1、最终仓库管理系统功能如下:(1)资料管理功能人员信息:用于登记公司的员工信息资料、客户信息资料、和供应商信息资料,对员工信息资料支持员工信息的录入、修改和删除。

2、最高权限的管理员能录入和删除工作人员,普通权限的工作人员只能修改自己的密码产品信息:支持产品信息的录入、修改和删除,可以对各个产品进行查询。(2)业务管理功能进出仓库明细:用于查看进货明细、进货退货、销售明细、销售退货、实现录入、修改和删除。退货时,需要指定相应的退货单,可以查询进出仓库明细。盘库:通过人工清点当前库存物品,与理论上仓库内物品数量对比,分析盘盈、盘亏问题(3)统计分析功能物品分析:用于对物品进行分析,主要是销售分析,包括对利润、进货、退货、库存等进行分析,可以通过报表显示。人员分析:由于需求加大,需要各种职务的工作人员,分析职务需求,可供人才参考利润分析:对产品销售的利润进行分

3、析,可以看出货物的供求关系(4)系统帮助功能: 制作人员介绍 使用帮助 2、给出系统的逻辑模型:数据流程图、数据字典数据流图例子(可根据需要用多层数据流图表示):采购货物数据流图:数据字典:数据项: 仓库:仓库编号,仓库名,仓库类型,管理员,员工编号; 供应商:供应商编号,姓名,联系方式,地址; 供应商供应的货物存入仓库数据结构: 供应商提供货物,存入相应的仓库数据流: 需求的货物进入相应的仓库数据存储: 产品描述,应付款处理过程: 需求货物-送订单号-订单处理-付款-货物入库管理数据流图:数据字典:数据项: 员工:员工编号,姓名,登录密码,性别,生日,联系方式,职称,家庭住址;货物:货物编号

4、,名称,类型,数量,单位,进价,售价,订单号;管理员管理仓库和资料库数据结构: 管理员进行相关的操作,显示相应的信息,或存储相应的物品、资料数据流: 操作信息,操作数据,相关信息表数据存储: 查询时将数据信息显示出来,入出库数据进行存储处理等等处理过程: 管理员操作-获得操作信息-实行相应的处理三、系统设计1、概念结构设计画出系统E-R图。2、逻辑结构设计将E-R图(或其他概念设计图)转换为具体的DBMS对应的关系模式。员工:员工编号,姓名,登录密码,性别,生日,联系方式,职称,家庭住址;货物:货物编号,名称,类型,单位,进价,售价;仓库:仓库编号,仓库名,仓库类型,员工编号;供应商:供应商编

5、号,姓名,联系方式,地址;客户:客户编号,货物编号,姓名,联系方式,地址,订单号;库存: 仓库编号,货物编号,数量 进仓:入单号,进仓时间,入库数量,所付金额 出仓:出单号,出仓时间,出库数量,所付金额 盘库:盘库号,盘库时间,盘库数量 数据库设计:员工表序号字段名称数据类型大小可否为空主键说明1staff_no可变字符10否是员工编号2staff_password可变字符10否否登录密码3staff_name可变字符10否否员工姓名4staff_sex字符2否否性别5staff_birthday日期可否出生日期6staff_phone字符15否否联系方式7staff_rank字符10否否职称

6、8staff_family_address可变字符50可否家庭住址仓库表序号字段名称数据类型大小可否为空主键说明1cangku_no可变字符10否是仓库编号2cangku_name可变字符10否否仓库名3cangku_type可变字符10否否仓库类型4staff_no可变字符10否否员工编号货物表序号字段名称数据类型大小可否为空主键说明1material_no可变字符10否是货物编号2material_name可变字符10否否货物名3material_type可变字符10否否货物类型4material_in_price可变字符10否否进价5material_out_price可变字符10否否出

7、价6material_unit字符4否否单位供应商表序号字段名称数据类型大小可否为空主键说明1supplier_no可变字符10否是供应商编号2material_no可变字符10否是货物编号3supplier_name可变字符10否否供应商姓名4supplier_phone字符15否否联系方式5supplier_address可变字符50可否住址客户表序号字段名称数据类型大小可否为空主键说明1kehu_no可变字符10否是客户编号2kehu_name可变字符10否否客户姓名3kehu_password可变字符10否否登录密码4kehu_phone字符15否否联系方式5kehu_address可

8、变字符50可否住址 进仓表序号字段名称数据类型大小可否为空主键说明1rudan_no整形否否入单号2supplier_no可变字符10否否供应商编号3material_no可变字符10否否货物编号4in_data日期否否进仓时间5ru_qty长整形否否进仓数量6supp_pay长整形否否所付金额7staff_no员工编号10否否员工编号出仓表序号字段名称数据类型大小可否为空主键说明1chudan_no整形否否出单号2kehu_no 可变字符10否否客户编号3material_no可变字符10否否货物编号4out_data日期否否出仓时间5chu_qty长整形否否出仓数量6kehu_pay长整形

9、否否所付金额7staff_no员工编号10否否员工编号库存表序号字段名称数据类型大小可否为空主键说明1cangku_no可变字符10否是仓库号2material_no可变字符10否是货物编号3qty长整形否否数量盘库表序号字段名称数据类型大小可否为空主键说明1panku_no可变字符10否否盘库号2staff_no可变字符10否否员工编号3panku_date日期否否盘库日期4material_no可变字符10否否货物编号5panku_qty长整形否否盘库数量3、系统功能模块图画出系统功能模块图,并对子模块功能进行详细说明。四、详细设计主要的SQL语句-数据库的建立CREATE DATABAS

10、E ckglON PRIMARY ( NAME=ckgl_data, FILENAME=f:cgckgl_data.mdf, SIZE=5mb, FILEGROWTH=15% )LOG ON( NAME=ckgl_log, FILENAME=f:cgckgl_log.ldf, SIZE=2mb, MAXSIZE=100mb, FILEGROWTH=1MB)GO -员工表create table staff(staff_no varchar(10) primary key,staff_password varchar(10) not null,staff_name varchar(10) not

11、 null,staff_sex char(2) not null,staff_birthday datetime,staff_phone char(15)not null,staff_rank char(10) not null,staff_family_address varchar(50),)go-货物表create table material(material_no varchar(10) primary key,material_name varchar(10)not null,material_type varchar(10) not null,material_in_price

12、varchar(10)not null,material_out_price varchar(10)not null,material_unit char(4) not null,)go-仓库表create table cangku(cangku_no varchar(10) primary key,cangku_name varchar(10)not null,cangku_type varchar(10)not null,staff_no varchar(10) not null,foreign key(staff_no) references staff(staff_no),)Go-库存

13、表create table cunhuo(cangku_no varchar(10),material_no varchar(10),qty bigint,primary key(cangku_no,material_no),foreign key(cangku_no) references cangku(cangku_no),foreign key(material_no) references material(material_no),)-供应商表create table supplier(supplier_no varchar(10),material_no varchar(10),s

14、upplier_name varchar(10)not null,supplier_phone char(15) not null,supplier_address varchar(50),primary key(supplier_no,material_no),foreign key(material_no) references material(material_no),)-进仓表create table material_in(rudan_no int not null,supplier_no varchar(10) not null,material_no varchar(10) n

15、ot null,in_data datetime not null,ru_qty bigint not null,supp_pay bigint not null,staff_no varchar(10) not null,foreign key(supplier_no,material_no) references supplier(supplier_no,material_no),foreign key(staff_no) references staff(staff_no),)-客户表create table kehu(kehu_no varchar(10) primary key,ke

16、hu_name varchar(10)not null,kehu_password varchar(10)not null,kehu_phone char(15)not null,kehu_address varchar(50),)-出仓表create table material_out(chudan_no int not null,kehu_no varchar(10) not null,material_no varchar(10) not null,out_data datetime not null,chu_qty bigint not null,kehu_pay bigint no

17、t null,staff_no varchar(10) not null,foreign key(kehu_no) references kehu(kehu_no),foreign key(material_no) references material(material_no),foreign key(staff_no) references staff(staff_no),)-盘库表create table panku( panku_no varchar(10) not null, staff_no varchar(10) not null, panku_date datetime, ma

18、terial_no varchar(10)not null, panku_qty bigint, foreign key(material_no) references material(material_no), foreign key(staff_no) references staff(staff_no), )Go建立进出仓的存储过程入仓:create procedure material_in_prorudan_no int,supplier_no varchar(10),material_no varchar(10),in_data datetime,ru_qty bigint,su

19、pp_pay bigint,staff_no varchar(10),out varchar(20)=0 outputas DECLARE n1 int select n1=count(material_no) from material where material_no=material_no if (n1=0) begin select out=此物料不存在,如果要进仓,请先登记新物料信息! return end else begin insert into material_in values(rudan_no,supplier_no,material_no,in_data,ru_qt

20、y,supp_pay,staff_no) update cunhuo set qty=qty+ru_qty where material_no=material_no select out=操作成功! return endgo出仓:create proc material_out_pro chudan_no int,kehu_no varchar(10),material_no varchar(10),out_data datetime,chu_qty bigint,kehu_pay bigint,staff_no varchar(10),out varchar(20)=0 outputas

21、DECLARE n1 int select n1=count(material_no) from material where material_no=material_no if (n1=0) begin select out=此物料不存在! return end else begin if chu_qty(select qty from cunhuo where material_no=material_no) begin select out=库存数量不足! return end else begin insert into material_out values(chudan_no,k

22、ehu_no,material_no,out_data,chu_qty,kehu_pay,staff_no) update cunhuo set qty=qty-chu_qty where material_no=material_no select out=操作成功! return end end盘库:procedure TForm4.Button8Click(Sender: TObject);begin/insert into panku(panku_no,staff_no,panku_date,material_no,panku_qty)/select 1,1001,2012-4-1,m

23、aterial_no,qty from cunhuo/将盘库结果插入到盘库表中 with datamodule2.panku do begin sql.clear; sql.add(insert into panku(panku_no,staff_no,panku_date,material_no,panku_qty); sql.add(select +edit4.text+,+combobox11.text+,+datetostr(datetimepicker4.datetime)+,material_no,qty from cunhuo); close; execsql; showmess

24、age(盘库成功!); button8.enabled:=false; /一次登录不允许重复盘库,以免多占空间资源 end;/显示本次盘库结果 with datamodule2.panku1 do begin sql.clear; sql.add(select * from panku,material where panku.material_no=material.material_no and panku_no = +edit4.text+); close; open; end;end;/盘库后盘库单号自动加1,便于下次盘库procedure TForm4.FormCreate(Send

25、er: TObject);var max:integer;begin with DataModule2.ADOQuery1 do begin sql.Clear; sql.Add(select max(panku_no) as max from panku ); close; open; max:=DataModule2.ADOQuery1.fieldbyname(max).AsInteger; edit4.Text:=inttostr(max+1); end;End;主要模块的程序流程图。1、2、3、4、五、系统实现与测试1、开发平台和工具选择Deiphi7 SQL20052、系统测试登录界

26、面:可以看到字体为动态形式,下面的诗为闪烁状态主界面:业务管理:进仓开单后单号自动加1盘库:信息管理:其中添加员工和删除员工只有人事管理员才能操作,如果是其他员工,则客户资料:供应商:员工需求分析:系统帮助:客户登录进来购买:客户改密:六、课程设计总结1、说明设计心得、想法建议等。通过本次课程设计,我们了解到总体把握的重要性。编写软件的前期准备非常重要,首先要进行需求分析,确定我们要完成什么功能。紧接着,以需求为前提建立数据库,需要什么表,每个表里面要有那些元素,这个表在运用的时候具体会在哪个功能上使用到等等。其次,前台入手,先将要实现的功能建立菜单放入主窗口,再将各个功能细分,分配到各个form窗口中去实现。 在与老师的交流沟通中,我们受益匪浅,明白了数据库后台设计的重要性。依然记得老师给我们举得例子:建立一个权限表,这样的话当员工的权限有变动的话就不需要去前台修改程序,而只要在后台把权限表做一定的修改,这样就可以省去了修改代码的麻烦。还有触发器和储存过程的使用的优点,也是在老师的举例下获得更深刻的了解。 通过本次设计,我们明白了,对于数据库的学习,最主要的是实践,只有多上机练习,才能找到自己在哪方面欠缺,才能更好

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1