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

下载本文档

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

文档简介

1、课程设计报告课程设计题目:仓库管理系统数据库的设计与实现专 业 : 软件工程班 级 :学 号 :姓 名 :指导教师 :2012 年 12 月 1 日目录一、实验目的(3)二、设计要求(3)三、实验思路(3)四、实验过程(源代码) (6)五、实验总结(19)六、心得体会(20)、目的:通过本次课程设计让学生能够综合运用所学的关系数据库原理知识解决并 能设计一个实际问题, 进一步掌握数据库原理的相关理论和数据库的设计实现过 程,进一步提高学生的分析问题和解决问题的能力以及学生的动手能力。二、课程设计要求:1对各个系统进行系统功能需求分析描述:设计一个仓库管理系统,实现下列功能:1 . 零件信息登记

2、(包括种类,名称和库存数量等信息) ;2 . 零件进库登记(包括种类,名称和库存数量等信息) ;3 . 零件出库登记(包括种类,名称和库存数量等信息) ; 三、实现思路需求分析 : 由于货物的种类数量的纷繁复杂, 比较难管理 , 给工作人员的工作带来诸多不便 . 此系统的开发就是专门解决工作人员在这些烦琐的问题。 此系统适用于仓库, 它是比较完善的系统管理软件。 此系统的采用方便了仓库管理人员对仓库的管理, 对 管理人员的工作起到重要作用。通过本系统软件,能帮助工作人员利用计算机,快速 方便的对仓库的货物进行管理、输入、输出、查找等操作,将货物的管理具体化、直 观化、合理化。 通过该系统所记录

3、的数据,可以使仓库管理者对货物的进出情况管 理的更清楚,使仓库管理系统更完善,减轻工作人员的工作负担,使工作简化,从而 对货物进行更井井有条的管理。主要功能如下:零件信息登记入库信息登记入库信息查询出库信息删除 图查询零件信息修改入库操作出库信息登记出库信息查询零件信息删除入库信息修改出库库操作显示触发器零件信息查询8 入库信息删除出库信息修改各功能创建视2 E-R 图:产品名称种类出库价格入库时间入库价格货主联系产品名称货主名称产品编号入库价格客户姓名出库时间出库价格出库时间入库价格产品编号出库入库客户姓名种类产品名称种类出库时间库存仓库零件信息出库信息入库信息3 创建表:仓库零件信息表(产

4、品编号【主键】,名称 【不为空】 ,种类【不为空】 ,入库价格【为空】,出库价格【为空】 ,库存【为空】 )入库信息表(产品编号【主键】 ,产品名称【不为空】 ,货主名称【不为空】 ,入库数量【为 空】,入库价格【为空】 ,货主联系电话【为空】 )出库信息表(产品编号【主键】 ,产品名称【不为空】 ,客户名称【不为空】 ,出库数量【为 空】,出库价格【为空】 ,客户联系电话【为空】 )具体操作: 仓库零件信息表创建: create table 仓库零件信息表(产品编号 int not null primary key, 产品名称 varchar(20)not null, 种类 varchar(

5、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, 货主联系电

6、话 int,)列名字段类型长度允许为空产品编号Int10Not null产品名称Varchar20Not null5货主名称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,)仓库零件信息表创建列名字段类型长度允许为空产品编号int20p

7、rimary 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,

8、入库价格 int, 出库价格 int,库存 intinsert into 仓库零件信息表 insert into 仓库零件信息表values (1,电脑零件 ,CPU,1500,1800,20)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

9、 , 产品名称 varchar(20)not null, 货主名称 varchar(20) not null, 入库数量 int, 入库价格 int, 货主联系电话 intinsert into 入库信息表 insert into 入库信息表 insert into 入库信息表 insert into 入库信息表values (1,电脑零件 ,张三 ,10,1500,123456) values (2,电视零件 ,李四 ,10,1000,234567) values (3,电脑零件 ,王二 ,10,1300,7758520) values (4,电脑零件 ,阿三 ,10,800,3344334

10、)-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,电

11、脑零件 ,钟三 ,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 出库信息表 (客户联系电话 ) - d

12、rop index 出库 信息.客户 -创建视图create view vi_0asselect 仓库零件信息表 .产品编号 ,产品名称 ,货主名称 ,入库数量 ,入库信息表 .入库 价格,货主联系电话 ,出库价格, 种类,库存from 入库信息表 ,仓库零件信息表where 入库信息表 .产品编号 = 仓库零件信息表 .产品编号 -该视图为联系入库 信息表和仓库零件信息表的查询实现如下:零件信息登记 create procedure seve(产品编号 int ,名称 varchar(20),种类 varchar(15),入库价格 int,出库价格 int,库存 int)asinsert i

13、nto 仓库零件信息表 values (产品编号 ,名称,种类 ,入库价格 ,出 库价格 ,库存) exec seve 产品编号=11,名称=AMD,种类=显卡,入库价格 =900,出库价 格=1100,库存=30 -查看插入产品编号为 11的信息在原有零件中实现如下: 零件信息修改 create procedure pro_update(产品编号 int ,名称 varchar(20),种类 varchar(15),入库价格 int,出库价格 int,库存 int)asupdate 仓库零件信息表set 名称=名称,种类=种类,入库价格 =入库价格,出库价格=出库价格 ,库存 =库存wher

14、e 产品编号 =产品编号update 出库信息表set 产品名称 =名称,出库价格 =出库价格 where 产品编号 =产品编号 update 入库信息表set 产品名称 =名称,入库价格 =入库价格 where 产品编号 =产品编号 exec pro_update 产品编号 =4,名称=修改,种类=已修改,入库价格 =500, 出库价格 =700,库存=25 -查看产品编号为 4 的修改情况实现如下:零件信息删除 create procedure pro_delete (产品编号 int)as delete from 仓库零件信息表 where 产品编号 =产品编号 exec pro_del

15、ete 产品编号 =11 实现如下: 零件信息查询 create procedure pro_select(产品编号 int)10asselect *from 仓库零件信息表where 产品编号 =产品编号 exec pro_select 产品编号 =1 -查询产品编号为 1 的信息 实现如下: 入库信息表登记 create procedure pro_1(产品编号 int,产品名称 varchar(20), 货主名称 varchar(20), 入库数量 int, 入库价格 int, 货主联系电话 int)asinsert into 入库信息表 values (产品编号 ,产品名称 ,货主名称

16、 ,入库数 量 ,入库价格 ,货主联系电话 ) exec pro_1 产品编号 =5,产品名称 =AMD, 货主名称 =小二 ,入库数量 =20,入库价格 =900,货主联系电话 =767876-登记产品编号为 5 的信息查看实现如下: 入库操作 create proc pro_7111(产品编号 int,产品名称 varchar(20),11货主名称 varchar(20),入库数量 int,入库价格 int, 货主联系电话 int ,出库价格 int,种类 varchar(12)asif (select 产品编号 from 仓库零件信息表 where 产品编号 =产品编号 ) is not

17、 null) -如果原有产品在仓库中存在 则执行编号为 5 的,没有则执行 else语句 beginupdate 仓库零件信息表set 库存 =库存+入库数量where 产品编号 =产品编号insert into 入库信息表 values (产品编号 ,产品名称 ,货主名称 ,入库数 量 ,入库价格 ,货主联系电话 )endelsebegininsert into 入库信息表 values (产品编号 ,产品名称 ,货主名称 ,入库数 量 ,入库价格 ,货主联系电话 )insert into 仓库零件信息表 values (产品编号 ,产品名称 ,种类 ,入库价 格,出库价格 ,入库数量 )e

18、nd exec pro_7111 产品编号 =5,产品名称 =ss,货主名称=ww,入库数量 =31, 入库价格 =1500,货主联系电话 =3232323, 出库价格 =2323, 种类=fds -如果原有仓库有的产品,则插入此行,查看产品编号为 5 的数量变化 实现如下:exec pro_711 产品编号 =12,产品名称 =ss,货主名称=ww,入库数量 =31, 入库价格 =1500,货主联系电话 =3232323, 出库价格 =2323, 种类=fds -如果原有仓库没有的产品,则插入此行,查看产品编号为12 的数量变化,重新查看仓库的数量实现如下:12 入库信息修改 create

19、procedure pro_2(产品编号 int,产品名称 varchar(20),货主名称 varchar(20),入库数量 int,入库价格 int,货主联系电话 int)asupdate 入库信息表set 产品名称 =产品名称 ,货主名称 =货主名称 ,入库数量 =入库数量 ,入库价 格 =入库价格 ,货主联系电话 =货主联系电话 where 产品编号 =产品编号 update 出库信息表set 产品名称 =产品名称where 产品编号 =产品编号 update 仓库零件信息表set 名称=产品名称 ,入库价格 =入库价格where 产品编号 =产品编号 select * from 入库

20、信息表 exec pro_2 产品编号 =12,产品名称 =修改 ,货主名称 =已修改 ,入库数量 =20,入库价格 =900,货主联系电话 =767876- 利用存储过程 查看产品编号为 12 的修改情况 实现如下:13入库信息删除 create proc pro_3( 产品编号 int) as delete from 入库信息表 where 产品编号 =产品编号exec pro_3 产品编号 =4 实现如下:入库信息查询 create procedure pro_42(产品编号 int) as select * from 入库信息表 where 产品编号 = 产品编号 exec pro_4

21、2 产品编号 =1 实现如下:14 出库信息登记 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 proce

22、dure pro_111(产品编号 int ,产品名称 varchar(20),出库价格 int,客户名称 varchar(20),出库数量 int,客户联系电话 int)asif (select 产品编号 from 仓库零件信息表 where 产品编号 =产品编号 )is null)print 仓库没有该货物 -如果原有仓库没有客户需要的产品 直接执行编号为 8的语句插入 如果有则执行 else 语句 查看出库后剩余的产品数量 执行编号为 4 的语句 else -begininsert into 出库信息表 values(产品编号 ,产品名称 ,客户名称 ,出库数量 , 客户名称 ,客户联系

23、电话 ) update 仓库零件信息表15 set 库存 =库存-出库数量where 仓库零件信息表 .产品编号 =产品编号 end exec pro_111 产品编号 =8,产品名称 =ss,客户名称 =123,出库数量 =31, 出库价格 =1500,客户联系电话 =3232323-如果原有仓库没有产品编号为 8 的 执行此行 实现如下: exec pro_111 产品编号=4,产品名称 =ss,客户名称 =123,出库数量 =31, 出库价格 =2323,客户联系电话 =3232323-如果原有仓库有产品编号为 4 的 执行此行查询 实现如下: 出库信息修改 create procedu

24、re pro_6(产品编号 int ,产品名称 varchar(20),客户名称 varchar(20),出库数量 int,出库价格 int,客户联系电话 int)asupdate 入库信息表set 产品名称 =产品名称where 产品编号 =产品编号update 出库信息表set 产品名称 =产品名称 ,客户名称 =客户名称 ,出库数量 =出库数量 ,出库价16 格=出库价格 ,客户联系电话 =客户联系电话 where 产品编号 =产品编号 update 仓库零件信息表set 名称=产品名称 ,出库价格 =出库价格 where 产品编号 =产品编号 exec pro_6 产品编号 =5,产品

25、名称 =修改,客户名称 =已修改 ,出库数量 =10,出库价格 =1100,客户联系电话 =98766-如果需要修改出库的产品信息 执行编号为 5 的实现如下: 出库信息删除 create proc pro_7( 产品编号 int) as delete from 出库信息表 where 产品编号 =产品编号exec pro_3 产品编号 =3 实现如下: 出库信息查询 create procedure pro_8 -drop procedure pro_8 (产品编号 int)17asselect *from 出库信息表where 产品编号 =产品编号exec pro_8 产品编号 =1 实现

26、如下: 显示触发器 在执行存储过程之前 执行触发器 方便查看零 件入库出库的更新添加修改删除 create trigger tri_1 on 仓库零件信息表for insertasselect *from 仓库零件信息表create trigger tri_2on 仓库零件信息表for deleteasselect *from 仓库零件信息表create trigger tri_3on 仓库零件信息表for updateasselect *from 仓库零件信息表create trigger tri_4on 入库信息表for insertasselect *from 入库信息表create trigger tri_5on 入库信息表18for deleteas select * from 入库信息表create trigger tri_6 on 入库信息表 for update as select * from 入库信息表create trigger

温馨提示

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

评论

0/150

提交评论