数据库仓库管理系统.doc_第1页
数据库仓库管理系统.doc_第2页
数据库仓库管理系统.doc_第3页
数据库仓库管理系统.doc_第4页
数据库仓库管理系统.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计报告课程设计题目: 仓库管理系统数据库的设计与实现专 业: 软件工程班 级:学 号: 姓 名: 指导教师: 2012年12月1日 目 录一、 实验目的 (3)二、 设计要求 (3)三、 实验思路 (3)四、 实验过程(源代码)(6)五、 实验总结 (19)六、 心得体会 (20)一、目的:通过本次课程设计让学生能够综合运用所学的关系数据库原理知识解决并能设计一个实际问题,进一步掌握数据库原理的相关理论和数据库的设计实现过程,进一步提高学生的分析问题和解决问题的能力以及学生的动手能力。 二、课程设计要求:1对各个系统进行系统功能需求分析描述:设计一个仓库管理系统,实现下列功能:. 零件信息登记(包括种类,名称和库存数量等信息);. 零件进库登记(包括种类,名称和库存数量等信息);. 零件出库登记(包括种类,名称和库存数量等信息);三、实现思路 需求分析: 由于货物的种类数量的纷繁复杂,比较难管理,给工作人员的工作带来诸多不便.此系统的开发就是专门解决工作人员在这些烦琐的问题。此系统适用于仓库,它是比较完善的系统管理软件。此系统的采用方便了仓库管理人员对仓库的管理,对管理人员的工作起到重要作用。通过本系统软件,能帮助工作人员利用计算机,快速方便的对仓库的货物进行管理、输入、输出、查找等操作,将货物的管理具体化、直观化、合理化。 通过该系统所记录的数据,可以使仓库管理者对货物的进出情况管理的更清楚,使仓库管理系统更完善,减轻工作人员的工作负担,使工作简化,从而对货物进行更井井有条的管理。 主要功能如下: 1.零件信息登记 2.零件信息修改 3.零件信息删除 4.零件信息查询5.入库信息登记 6.入库操作 7.入库信息修改 8入库信息删除 9.入库信息查询 10.出库信息登记 11.出库库操作 12.出库信息修改 13.出库信息删除 14.出库信息查询 15.显示触发器 16.各功能创建视图查询 E-R图: 仓库零件信息产品编号产品名称货主名称入库价格入库时间入库价格产品名称种类出库价格入库价格客户姓名种类产品名称客户姓名出库时间产品编号入库信息入库出库出库信息库存出库价格货主联系电话出库时间创建表:1.仓库零件信息表(产品编号 【主键】,名称 【不为空】,种类【不为空】,入库价格【为空】,出库价格【为空】,库存【为空】)2.入库信息表(产品编号【主键】,产品名称【不为空】,货主名称【不为空】,入库数量【为空】,入库价格【为空】,货主联系电话【为空】)3.出库信息表(产品编号【主键】,产品名称【不为空】,客户名称【不为空】,出库数量【为空】,出库价格【为空】,客户联系电话【为空】)具体操作:仓库零件信息表创建:create table 仓库零件信息表(产品编号 int not null primary key,产品名称 varchar(20)not null,种类 varchar(15)not null,入库价格 int,出库价格 int,库存 int)列名字段类型长度允许为空产品编号int10Primary key产品名称Varchar10Not null种类Varchar10Not null入库价格Int10Not null出库价格Int10Not null库存Int200Not null入库信息表创建create table 入库信息表(产品编号 int not null primary key,产品名称 varchar(20)not null,货主名称 varchar(20) not null,入库数量 int,入库价格 int,货主联系电话 int,)列名字段类型长度允许为空产品编号Int10Not null产品名称Varchar20Not null货主名称Varchar20Not null入库数量Int13Not null入库价格Int10Not null货主联系电话Int20Y出库信息表创建create table 出库信息表(产品编号 int not null primary key,产品名称 varchar(20)not null,客户名称 varchar(20) not null,出库数量 int,出库价格 int,客户联系电话 int,)列名字段类型长度允许为空产品编号int20primary key产品名称varchar20not null客户名称varchar20not null出库数量int,20Y出库价格int,20Y客户联系电话int,20Y四、实现过程产品编号种类产品名称入库价格出库价格库存1电脑零件CP视零件CPU10001200203电脑零件显示脑零件显卡800100020 -仓库管理系统数据库查询与设计-/*仓库零件信息表创建*/create table 仓库零件信息表(产品编号 int not null primary key,名称 varchar(20)not null,种类 varchar(15)not null,入库价格 int,出库价格 int,库存 int)insert into 仓库零件信息表 values (1,电脑零件,CPU,1500,1800,20)insert into 仓库零件信息表 values (2,电视零件,CPU,1000,1200,20)insert into 仓库零件信息表 values (3,电脑零件,显示屏,1300,1500,20)insert into 仓库零件信息表 values (4,电脑零件,显卡,800,1000,20)-drop table 仓库零件信息表实现如下:/*入库信息表创建*/create table 入库信息表(产品编号 int not null ,产品名称 varchar(20)not null,货主名称 varchar(20) not null,入库数量 int,入库价格 int,货主联系电话 int)insert into 入库信息表 values (1,电脑零件,张三,10,1500,123456)insert into 入库信息表 values (2,电视零件,李四,10,1000,234567)insert into 入库信息表 values (3,电脑零件,王二,10,1300,7758520)insert into 入库信息表 values (4,电脑零件,阿三,10,800,3344334)-drop table 入库信息表实现如下:/*出库信息表创建*/create table 出库信息表(产品编号 int not null primary key,产品名称 varchar(20)not null,客户名称 varchar(20) not null,出库数量 int,出库价格 int,客户联系电话 int)insert into 出库信息表 values (1,电脑零件,胡二,10,1800,222222)insert into 出库信息表 values (2,电视零件,刘一,10,1500,4444444)insert into 出库信息表 values (3,电脑零件,钟三,10,1000,55555)-drop table 出库信息表实现如下:-查询所建的表select * from 仓库零件信息表select * from 入库信息表select * from 出库信息表 /*索引创建*/create unique index 货主索引 on 入库信息表(货主联系电话) - drop index 入库信息表.货主 create unique index 零件索引 on 仓库零件信息表(产品编号) - drop index 仓库零件信息表.零件create unique index 客户索引 on 出库信息表(客户联系电话) - drop index 出库信息.客户 -创建视图create view vi_0as select 仓库零件信息表.产品编号,产品名称,货主名称,入库数量,入库信息表.入库价格,货主联系电话 ,出库价格, 种类,库存from 入库信息表 ,仓库零件信息表where 入库信息表.产品编号=仓库零件信息表.产品编号 -该视图为联系入库信息表和仓库零件信息表的查询实现如下:-零件信息登记-create procedure seve(产品编号 int ,名称 varchar(20),种类 varchar(15),入库价格 int,出库价格 int,库存 int)asinsert into 仓库零件信息表 values (产品编号,名称,种类,入库价格,出库价格,库存)exec seve 产品编号=11,名称=AMD,种类=显卡,入库价格=900,出库价格=1100,库存=30 -查看插入产品编号为11的信息在原有零件中实现如下:-零件信息修改-create procedure pro_update(产品编号 int ,名称 varchar(20),种类 varchar(15),入库价格 int,出库价格 int,库存 int)asupdate 仓库零件信息表set 名称=名称,种类=种类,入库价格=入库价格,出库价格=出库价格,库存=库存where 产品编号=产品编号update 出库信息表set 产品名称=名称,出库价格=出库价格where 产品编号=产品编号update 入库信息表set 产品名称=名称,入库价格=入库价格where 产品编号=产品编号exec pro_update 产品编号=4,名称=修改,种类=已修改,入库价格=500,出库价格=700,库存=25 -查看产品编号为4的修改情况实现如下:-零件信息删除-create procedure pro_delete(产品编号 int)asdeletefrom 仓库零件信息表where 产品编号=产品编号exec pro_delete 产品编号=11实现如下:-零件信息查询-create procedure pro_select(产品编号 int)asselect *from 仓库零件信息表where 产品编号=产品编号exec pro_select 产品编号=1 -查询产品编号为1的信息实现如下:-入库信息表登记-create procedure pro_1(产品编号 int,产品名称 varchar(20),货主名称 varchar(20),入库数量 int,入库价格 int,货主联系电话 int)asinsert into 入库信息表 values (产品编号,产品名称,货主名称,入库数量,入库价格,货主联系电话)exec pro_1 产品编号=5,产品名称=AMD,货主名称=小二,入库数量=20,入库价格=900,货主联系电话=767876-登记产品编号为5的信息查看实现如下:-入库操作-create proc pro_7111 (产品编号 int,产品名称 varchar(20),货主名称 varchar(20),入库数量 int,入库价格 int,货主联系电话 int ,出库价格 int, 种类 varchar(12)asif (select 产品编号 from 仓库零件信息表 where 产品编号=产品编号) is not null) -如果原有产品在仓库中存在 则执行编号为5的,没有则执行else语句beginupdate 仓库零件信息表set 库存=库存+入库数量where 产品编号=产品编号insert into 入库信息表 values (产品编号,产品名称,货主名称,入库数量,入库价格,货主联系电话)endelsebegininsert into 入库信息表 values (产品编号,产品名称,货主名称,入库数量,入库价格,货主联系电话)insert into 仓库零件信息表 values (产品编号,产品名称,种类,入库价格,出库价格,入库数量)endexec pro_7111 产品编号=5,产品名称=ss,货主名称=ww,入库数量=31,入库价格=1500,货主联系电话=3232323, 出库价格=2323, 种类=fds-如果原有仓库有的产品,则插入此行,查看产品编号为5的数量变化实现如下:exec pro_711 产品编号=12,产品名称=ss,货主名称=ww,入库数量=31,入库价格=1500,货主联系电话=3232323, 出库价格=2323, 种类=fds-如果原有仓库没有的产品,则插入此行,查看产品编号为12的数量变化,重新查看仓库的数量实现如下:-入库信息修改-create procedure pro_2(产品编号 int,产品名称 varchar(20),货主名称 varchar(20),入库数量 int,入库价格 int,货主联系电话 int )asupdate 入库信息表set 产品名称=产品名称,货主名称=货主名称,入库数量=入库数量,入库价格=入库价格,货主联系电话=货主联系电话where 产品编号=产品编号update 出库信息表set 产品名称=产品名称where 产品编号=产品编号update 仓库零件信息表set 名称=产品名称,入库价格=入库价格where 产品编号=产品编号select *from 入库信息表exec pro_2 产品编号=12,产品名称=修改,货主名称=已修改,入库数量=20,入库价格=900,货主联系电话=767876- 利用存储过程 查看产品编号为12的修改情况实现如下:-入库信息删除-create proc pro_3(产品编号 int)asdelete from 入库信息表where 产品编号=产品编号exec pro_3 产品编号=4实现如下:-入库信息查询-create procedure pro_42(产品编号 int)asselect *from 入库信息表where 产品编号= 产品编号exec pro_42 产品编号=1实现如下:-出库信息登记-create procedure pro_5(产品编号 int ,产品名称 varchar(20),客户名称 varchar(20),出库数量 int,出库价格 int,客户联系电话 int)asinsert into 出库信息表 values (产品编号,产品名称,客户名称,出库数量,出库价格,客户联系电话)exec pro_5 产品编号=4,产品名称=AMD,客户名称=小三,出库数量=10,出库价格=1100,客户联系电话=98766-登记编号为5的产品出库情况实现如下:-出库操作-create procedure pro_111(产品编号 int ,产品名称 varchar(20),出库价格 int,客户名称 varchar(20),出库数量 int,客户联系电话 int)asif (select 产品编号 from 仓库零件信息表 where 产品编号=产品编号)is null)print 仓库没有该货物 -如果原有仓库没有客户需要的产品 直接执行编号为8的语句插入 如果有则执行else语句 查看出库后剩余的产品数量 执行编号为4的语句else -begininsert into 出库信息表 values(产品编号,产品名称,客户名称,出库数量,客户名称,客户联系电话)update 仓库零件信息表set 库存=库存-出库数量where 仓库零件信息表.产品编号=产品编号endexec pro_111 产品编号=8,产品名称=ss,客户名称=123,出库数量=31,出库价格=1500,客户联系电话=3232323-如果原有仓库没有产品编号为8的 执行此行实现如下:exec pro_111 产品编号=4,产品名称=ss,客户名称=123,出库数量=31, 出库价格=2323,客户联系电话=3232323-如果原有仓库有产品编号为4的 执行此行查询实现如下:-出库信息修改-create procedure pro_6(产品编号 int ,产品名称 varchar(20),客户名称 varchar(20),出库数量 int,出库价格 int,客户联系电话 int )asupdate 入库信息表set 产品名称=产品名称where 产品编号=产品编号update 出库信息表set 产品名称=产品名称,客户名称=客户名称,出库数量=出库数量,出库价格=出库价格,客户联系电话=客户联系电话where 产品编号=产品编号update 仓库零件信息表set 名称=产品名称,出库价格=出库价格where 产品编号=产品编号exec pro_6 产品编号=5,产品名称=修改,客户名称=已修改,出库数量=10,出库价格=1100,客户联系电话=98766-如果需要修改出库的产品信息 执行编号为5的实现如下:-出库信息删除-create proc pro_7(产品编号 int)asdelete from 出库信息表where 产品编号=产品编号exec pro_3 产品编号=3实现如下:-出库信息查询-create procedure pro_8 -drop procedure pro_8(产品编号 int)asselect *from 出库信息表where 产品编号=产品编号exec pro_8 产品编号=1实现如下:-显示触发器-在执行存储过程之前 执行触发器 方便查看零件入库出库的更新添加修改删除create trigger tri_1on 仓库零件信息表 for insert asselect *from 仓库零件信息表 create trigger tri_2on 仓库零件信息表 for delete asselect *from 仓库零件信息表 create trigger tri_3on 仓库零件信息表 for update asselect *from 仓库零件信息表 create trigger tri_4on 入库信息表 for insert asselect *from 入库信息表 create trigger tri_5on 入库信息表 for delete asselect *from 入库信息表 create trigger tri_6on 入库信息表 for update asselect *from 入库信息

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论