收藏 分销(赏)

物流管理SQL分析专项方案含代码.doc

上传人:二*** 文档编号:4678559 上传时间:2024-10-09 格式:DOC 页数:40 大小:165.54KB 下载积分:5 金币
下载 相关 举报
物流管理SQL分析专项方案含代码.doc_第1页
第1页 / 共40页
本文档共40页,全文阅读请下载到手机保存,查看更方便
资源描述
班级 xxx 系统名称:物流管理信息系统 一、需求分析 物流管理系统是为制造商和零售商设计地管理系统数据库系统,目地是: 1、实现上游制造商地信息管理 . 2、实现下游零售商地信息管理. 3、实现进库和配送地信息管理.从而提升物流效率,降低物流成本并提升企业管理化水平.经过调研分析,得到系统地以下功效需求.资料个人搜集整理,勿做商业用途 (1)数据检索 1、制造商、零售商查询某一产品名称,规格和单位 输入:产品编号 输出:产品名称,产品规格,产品单位,制造商编号 2、物流中心、制造商查询某一零售商名称,联络人,地址,电话号码,网址 输入:零售商编号 输出:零售商名称,联络人,地址,电话号码,网址 3、零售商、物流中心查询某一制造商信息表 输入:制造商编号 输出:制造商名称,联络人,地址,电话号码,网址 4、物流中心、制造商、零售商查询某一产品地出库信息表 输入:仓库编号 输出:仓库编号,库名,地址,电话 5、物流中心、零售商查询某一产品地制造商和产品信息表 输入:产品编号编号 输出:制造商名称,联络人,地址,电话号码,网站,产品名称,产品名称,产品规格,产品单位 6、查询某一产品对应地物流中心编号及产品信息 输入:产品编号 输出:物流中心编号,货物价格,提取.产品编号,产品.产品名称,产品名称,产品规格,产品单位 7、制造商,零售商查询某一物流中心信息 输入:物流中心编号 输出:物理中心名称,联络人,地址,电话号码,网址 (2)数据插入 ①产品数据插入 ②制造商数据插入 ③零售商数据插入 ④物流中心数据插入 (3)数据修改 ①产品数据修改:某产品数据改变时,输入该产品编号和需修改地属性,完成对产品表地修改 ②制造商数据修改:某制造商数据改变时,输入该制造商编号和需修改地属性,完成对制造商表地修改 ③零售商数据修改:某零售商数据改变时,输入该零售商编号和需修改地属性,完成对零售商地修改 ④物流中心数据修改:某物流中心数据改变时,输入该物流中心编号和需修改地属性,完成对物流中心地修改 二、概念设计 经需求分析,抽象出以下E-R模型 (1)制造商实体 地址 制造商编号 网站 电话号码 联络人 名称 制造商 (2)物流中心实体 电话号码 地址 物流中心编号 物流中心 联络人 名称 网站 (3)零售商实体 零售商编号 地址 电话号码 联络人 名称 网站 零售商 (4)产品实体 单位 规格 名称 产品编号 产品 (5)仓库实体 库名 电话 地址 仓库编号 仓库 (6)全局E-R图 制造商编号 产品数量 仓库编号 产品编号 运输单价 入库时间 产品单价 送货时间 货物价格 物流编号 仓库编号 n m 存放 m 物流中心编号 产品编号 产品质量 产品批次 产品编号 制造商编号 m m n n n n 1 运输 管理 提取 制造 物流中心 零售商 仓库 产品 制造商 资料个人搜集整理,勿做商业用途 仓库编号 零售商编号 三、逻辑设计 产品(产品编号,产品名称,产品规格,产品单位,制造商编号) 零售商(零售商编号,名称,联络人,地址,电话号码,网站) 制造商(制造商编号,名称,地址,联络人,电话号码,网站) 物流中心(物流中心编号,名称,联络人,地址,电话号码,网站) 仓库(仓库编号,库名,地址,电话) 存放(产品编号,仓库编号,制造商编号,产品数量,入库时间) 管理(物流中心编号,仓库编号,送货时间,产品单价) 制造(制造商编号,产品编号,产品批次,产品质量) 运输(仓库编号,零售商编号,运输单价) 四、 物理设计 依据以上关系模式构建地数据表结构如表所表示. 表1 产品表结构 字段名 类型 特殊属性 产品编号 Char(10) PEIMARY KEY 产品名称 Char(20) NOT NULL 产品规格 Char(10) 产品单位 Char(10) NOT NULL 制造商编号 Char(10) FOREIGN KEY 表2 零售商结构 字段名 类型 特殊属性 零售商编号 Char(10) PRIMARY EKY 名称 Char(10) NOT NULL 联络人 Char(10) NOT NULL 地址 Varchar(30) NOT NULL 电话号码 Int NOT NULL 网站 Char(20) 表3 制造商结构 字段名 类型 特殊属性 制造商编号 Char(10) PRIMARY EKY 名称 Char(10) NOT NULL 联络人 Char(10) NOT NULL 地址 Varchar(30) NOT NULL 电话号码 Char(20) NOT NULL 网站 Char(20) 表4 物流中心结构 字段名 类型 特殊属性 物流中心编号 Char(10) PRIMARY EKY 名称 Char(10) NOT NULL 联络人 Char(10) NOT NULL 地址 Varchar(30) NOT NULL 电话号码 Char(20) NOT NULL 网站 Char(10) 字段名 类型 特殊属性 仓库编号 Char(10) PRIMARY KEY 库名 Char(20) NOT NULL 地址 Varchar(30) NOT NULL 电话 Char(20) NOT NULL 表5 仓库表结构 表6 存放表结构 字段名 类型 特殊属性 产品编号 Char(10) PRIMARY KEY, FOREIGN KEY 仓库编号 Char(10) PRIMARY KEY,FOREIGN KEY 制造商编号 Char(10) 产品数量 Int 入库时间 Char(10) NOT NULL 表7 管理表结构 字段名 类型 特殊属性 物流中心编号 Char(10) PRIMARY KEY,FOREIGN KEY 仓库编号 Char(10) PRIMARY KEY,FOREIGN KEY 产品单价 Int 送货日期 Char(10) 表8 制造表结构 字段名 类型 特殊属性 制造商编号 Char(10) PRIMARY KEY,FOREIGN KEY 产品编号 Char(10) PRIMARY KEY,FOREIGN KEY 产品批次 Char(10) NOT NULL 产品质量 Int NOT NULL 表9 运输表结构 字段名 类型 特殊属性 零售商编号 Char(10) PRIMARY KEY,FOREIGN KEY 仓库编号 Char(10) PRIMARY KEY,FOREIGN KEY 运输单价 Int NOT NULL 表10 提取表结构 字段名 类型 特殊属性 物流中心编号 Char(10) PRIMARY KEY,FOREIGN KEY 产品编号 Char(10) PRIMARY KEY,FOREIGN KEY 货物价格 Int NOT NULL 五、 系统实现 1、数据库及其基础表地建立 数据库地建立用企业管理器,基础表地建立用T—SQL语句. 数据库名称:WL_System 1、创建表 Create database WL_System on ( name='wl_system_data', filename= 'C:\SQLhomework\wl_system_data.mdf', size=10mb,maxsize=50mb,filegrowth=2mb ) LOG ON ( name='wl_system_log', filename='C:\SQLhomework\wl_system_log.ldf', size=10mb, maxsize=50mb, filegrowth=2mb ) 2、建立基础表结构 USE WL_System Go Create table 制造商 ( 制造商编号char(10) primary key, 名称char(10)NOT NULL, 联络人char(10)NOT NULL, 地址varchar(30), 电话号码char(20)NOT NULL, 网站char(20) ) --drop table 制造商 Create table 产品 ( 产品编号char(10)primary key, 产品名称char(20)NOT NULL, 产品规格char(10), 产品单位char(10)NOT NULL, 制造商编号char(10), Foreign key (制造商编号) references 制造商(制造商编号), ) Create table 零售商 ( 零售商编号char(10) primary key, 名称char(10)NOT NULL, 联络人char(10)NOT NULL, 地址char(30)NOT NULL, 电话号码Int NOT NULL, 网站char(20) ) --drop table 零售商 Create table 物流中心 ( 物流中心编号char(10) primary key, 名称char(10)NOT NULL, 联络人char(10)NOT NULL, 地址Varchar(30), 电话号码char(20)NOT NULL, 网站char(10) ) --drop table 物流中心 Create table 仓库 ( 仓库编号char(10) primary key, 库名char(20) NOT NULL, 地址varchar(30)NOT NULL, 电话char(20)NOT NULL ) --drop table 仓库 Create table 存放 ( 产品编号char(10), 仓库编号char(10), 制造商编号char(10), 产品数量int, 入库时间char(10)NOT NULL, primary key (仓库编号,产品编号), Foreign key (仓库编号) references 仓库(仓库编号), Foreign key (产品编号) references 产品(产品编号) ) --drop table 存放 Create table 管理 ( 物流中心编号char(10), 仓库编号char(10), 产品单价int, 送货日期char(10), primary key(物流中心编号,仓库编号), Foreign key (物流中心编号) references 物流中心(物流中心编号), Foreign key (仓库编号) references 仓库(仓库编号) ) --drop table 管理 Create table 制造 ( 制造商编号char(10), 产品编号char(10), 产品批次char(10)NOT NULL, 产品质量int NOT NULL, primary key(制造商编号,产品编号), Foreign key (制造商编号) references 制造商(制造商编号), Foreign key (产品编号) references 产品(产品编号) ) --drop table 制造 Create table 运输 ( 零售商编号char(10), 仓库编号char(10), 运输单价int NOT NULL, primary key(零售商编号,仓库编号), Foreign key (零售商编号) references 零售商(零售商编号), Foreign key (仓库编号) references 仓库(仓库编号) ) --drop table 运输 Create table 提取 ( 物流中心编号char(10), 产品编号char(10), 货物价格int NOT NULL, primary key(物流中心编号,产品编号), Foreign key (物流中心编号) references 物流中心(物流中心编号), Foreign key (产品编号) references 产品(产品编号) ) --drop table 提取 3、输入数据(其它9组输入在最终) insert into 制造商 values ( '001','钢笔企业','王女士','tian津','2297369','.com'资料个人搜集整理,勿做商业用途 ) insert into 零售商 values ( '003','学五超市','李女士','舔大','022110','.com'资料个人搜集整理,勿做商业用途 ) insert into 产品 values ( '998','钢笔','英雄','根','001' ) insert into 物流中心 values ( '009','圆通快递','圆通大爷','舔大','02119','.com' ) insert into 仓库 values ( '001','南开仓库','南大','120' ) insert into 存放 values ( '998','001','002','56','Jul7' ) insert into 管理 values ( '009','001','100','Jul_1st' ) insert into 制造 values ( '001','998','3','1' ) insert into 运输 values ( '003','001','100' ) 4、创建索引 --索引 (1) Create nonclustered index 制造商I on 制造商(制造商编号) Create nonclustered index 零售商I on 零售商(零售商编号) (2) create index 物流中心I on 物流中心(物流中心编号) create index 库存 on 仓库(库名,地址) 5、创建视图 Create view vw制造商 As Select 名称,联络人,地址,电话号码,网站 from 制造商 Create view vw零售商 As Select 名称,联络人,地址,电话号码,网站 from 零售商 6、创建存放过程 --存放过程~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ (1)数据检索 1、制造商、零售商查询某一产品名称,规格和单位 输入:产品编号 输出:产品名称,产品规格,产品单位,制造商编号 Create procedure 产品_into(@No char(10)=null) As if @No is null begin print'请输入产品编号' end else begin Select 产品名称,产品规格,产品单位,制造商编号 from 产品 where @No = 产品.产品编号 End execute 产品_into '998' --drop procedure 产品_into 2、物流中心、制造商查询某一零售商名称,联络人,地址,电话号码,网址 输入:零售商编号 输出:零售商名称,联络人,地址,电话号码,网址 Create procedure 零售商_into(@No char(10)=null) As if @No is null begin print'请输入零售商编号' end else begin Select 名称,联络人,地址,电话号码,网站 from 零售商 where @No = 零售商.零售商编号 end --drop procedure 零售商_into execute 零售商_into '003' 3、零售商、物流中心查询某一制造商信息表 输入:制造商编号 输出:制造商名称,联络人,地址,电话号码,网址 Create procedure 制造商_into(@No char(10)=null) As if @No is null begin print'请输入制造商编号' end else begin Select 名称,联络人,地址,电话号码,网站 from 制造商 where @No = 制造商.制造商编号 end --drop procedure 制造商_into execute 制造商_into '002' 4、物流中心、制造商、零售商查询某一产品地出库信息表 输入:仓库编号 输出:仓库编号,库名,地址,电话 Create procedure 仓库_into (@No char(10)=null) As if @No is null begin print'请输入仓库编号' end else begin Select 仓库编号,库名,地址,电话 from 仓库 where @No = 仓库.仓库编号 end --drop procedure 仓库_into execute 仓库_into '001' 5、物流中心、零售商查询某一产品地制造商和产品信息表 输入:产品编号编号 输出:制造商名称,联络人,地址,电话号码,网站,产品名称,产品名称,产品规格,产品单位 Create procedure 制造商_产品_into(@No char(10)=null) As if @No is null begin print'输入错误,请提供产品编号,即可取得制造商和产品地信息' end else begin Select 制造商.名称,联络人,地址,电话号码,网站,产品.产品名称,产品名称,产品规格,产品单位资料个人搜集整理,勿做商业用途 From 制造商,产品 where 制造商.制造商编号=产品.制造商编号and @No=产品.产品编号 end execute 制造商_产品_into '998' --哇咔咔咔咔咔^试了这么久最终成功了!!!后面地逗号哭瞎了!!两个表真有成就感哈哈~! --drop procedure 制造商_产品_into 编号及产品信息 输入:产品编号 6、查询某一产品对应地物流中心 输出:物流中心编号,货物价格,提取.产品编号,产品.产品名称,产品名称,产品规格,产品单位 Create procedure 提取_产品_into(@No char(10)=null) As if @No is null begin print'请提供产品编号,即可取得物流和产品地信息' end else begin Select 物流中心编号,货物价格,提取.产品编号,产品.产品名称,产品名称,产品规格,产品单位 from 提取inner join 产品on 产品.产品编号=产品.产品编号 where @No = 产品.产品编号 end execute 提取_产品_into '998' 7、制造商,零售商查询某一物流中心信息 输入:物流中心编号 输出:物理中心名称,联络人,地址,电话号码,网址 Create procedure 物流中心_into(@No char(10)=null) As if @No is null begin print'请输入物流中心编号' end else begin Select 名称,联络人,地址,电话号码,网站 from 物流中心 where @No = 物流中心.物流中心编号 end --drop procedure 物流中心_into execute 物流中心_into '009' 8、输入产品编号,输出产品信息,物流中心信息,制造商信息 Create procedure 产品_提取_物流中心_制造商_into(@No char(10)=null)资料个人搜集整理,勿做商业用途 As if @No is null begin print'输入错误,请提供产品编号,即可取得物流和产品地信息' end else begin Select 物流中心.物流中心编号,货物价格,提取.产品编号,产品.产品名称,产品规格,产品单位,制造商.制造商编号,制造商.名称as 制造商名称,资料个人搜集整理,勿做商业用途 物流中心.名称as 物流名称,物流中心.电话号码as 物流电话 from 提取,产品,制造商,物流中心 where @No = 产品.产品编号and 提取.产品编号= 产品.产品编号 and 产品.制造商编号= 制造商.制造商编号and 物流中心.物流中心编号= 提取.物流中心编号 end --drop procedure 产品_提取_物流中心_制造商_into exec 产品_提取_物流中心_制造商_into '998' (2)数据插入 插入产品数据 create procedure 产品数据插入 ( @产品编号char(10), @产品名称char(20), @产品规格char(10),@产品单位char(10),@制造商编号char(10) ) as insert into 产品 values(@产品编号,@产品名称,@产品规格,@产品单位,@制造商编号) execute 产品数据插入'111','铅笔','中华','支','002' execute 制造商_产品_into '111' 插入制造商、零售商、物流中心数据 create procedure 数据零售商插入 ( @零售商编号char(10), @联络人char(10), @地址char(10),@电话char(10),@网址char(20) ) as insert into 产品 values(@零售商编号,@联络人,@地址,@电话,@网址) create procedure 数据制造商插入 ( @制造商编号char(10), @联络人char(10), @地址char(10),@电话char(10),@网址char(20) ) as insert into 产品 values(@制造商编号,@联络人,@地址,@电话,@网址) create procedure 数据物流中心插入 ( @物流中心编号char(10), @联络人char(10),@地址char(10),@电话char(10),@网 址char(20)资料个人搜集整理,勿做商业用途 ) as insert into 产品 values(@物流中心编号,@联络人,@地址,@电话,@网址) (3)数据修改 ① 产品数据修改:某产品数据改变时,输入该产品编号和需修改地属性,完成对产品表地修改 create procedure 产品数据修改(@产品编号char(10), @产品名称char(20)=产品名称,@产品规格char(10)=产品规格, @产品单位char(10)=产品单位,@制造商编号char(10)=制造商编号) as update 产品 set 产品名称=@产品名称,产品规格=@产品规格,产品单位=@产品单位,制造商编号=@制造商编号 where 产品编号=@产品编号 execute 产品数据修改'998','英雄2','黑笔','支','002' ② 制造商数据修改:某制造商数据改变时,输入该制造商编号和需修改地属性,完成对制造商表地修改 create procedure 制造商数据修改 ( @制造商编号char(10), @联络人char(10)= 联络人, @地址char(20)= 地址, @电话号码char(10)= 电话号码,@网站char(20)= 网站 ) as update 制造商 set 制造商编号= @制造商编号, 联络人= @联络人,地址= @地址,电话号码= @电话号码,网站= @网站资料个人搜集整理,勿做商业用途 where 制造商编号= @制造商编号 ③ 零售商数据修改:某零售商数据改变时,输入该零售商编号和需修改地属性,完成对零售商地修改 create procedure 零售商数据修改 ( @零售商编号char(10), @联络人char(10)= 联络人, @地址char(20)= 地址, @电话号码char(10)= 电话号码,@网站char(20)= 网站 ) as update 零售商 set 零售商编号= @零售商编号, 联络人= @联络人, 地址= @地址,电话号码= @电话号码,网站= @网站 where 零售商编号= @零售商编号 ④物流中心数据修改:某物流中心数据改变时,输入该物流中心编号和需修改地属性,完成对物流中心地修改 create procedure 物流中心数据修改 ( @物流中心编号char(10), @联络人char(10)= 联络人, @地址char(20)= 地址, @电话号码char(10)= 电话号码,@网站char(20)= 网站 ) as update 物流中心 set 物流中心编号= @物流中心编号, 联络人= @联络人, 地址= @地址,电话号码= @电话号码,网站= @网站 where 物流中心编号= @物流中心编号 --以下输入剩下组数据 --9 --开始输入数据 insert into 制造商 values ( '999','百货企业','9女士','城市','999999','' ) insert into 零售商 values ( '99','超市','9先生','零售商','0009990','' ) insert into 产品 values ( '0009','产品','神秘品牌','根','999' ) insert into 物流中心 values ( '9','9通快递','9通大爷','天津大','090909','' ) insert into 仓库 values ( '099','南开仓库','南大号','9990009' ) insert into 存放 values ( '0009','099','999','9','Jul9' ) insert into 管理 values ( '9','099','90','Jul_9st' ) insert into 制造 values ( '999','0009','00999','9' ) insert into 运输 values ( '99','099','909' ) insert into 提取 values ( '9','0009','99' ) --开始输入数据 insert into 制造商 values ( '888','百货企业','8女士','城市','888888','' ) insert into 零售商 values ( '88','超市','8先生','零售商','0008880','' ) insert into 产品 values ( '0008','产品','神秘品牌','根','888' ) insert into 物流中心 values ( '8','8通快递','8通大爷','天津大','080808','' ) insert into 仓库 values ( '088','南开仓库','南大号','8880008' ) insert into 存放 values ( '0008','088','888','8','Jul8' ) insert into 管理 values ( '8','088','80','Jul_8st' ) insert into 制造 values ( '888','0008','00888','8' ) insert into 运输 values ( '88','088','808' ) insert into 提取 values ( '8','0008','88' ) --开始输入数据 insert into 制造商 values ( '777','百货企业','7女士','城市','777777','' ) insert into 零售商 values ( '77','超市','7先生','零售商','0007770','' ) insert into 产品 values ( '0007','产品','神秘品牌','根','777' ) insert into 物流中心 values ( '7','7通快递','7通大爷','天津大','070707','' ) insert into 仓库 values ( '077','南开仓库','南大号','7770007' ) insert into 存放 values ( '0007','077','777','7','Jul7' ) insert into 管理 values ( '7','077','70','Jul_7st' ) insert into 制造 values ( '777','0007','00777','7' ) insert into 运输 values ( '77','077','707' ) insert into 提取 values ( '7','0007','77' ) --开始输入数据 insert into 制造商 values ( '666','百货企业','6女士','城市','666666','' ) insert into 零售商 values ( '66','超市','6先生','零售商','0006660','' ) insert into 产品 values ( '0006','产品','神秘品牌','根','666' ) insert into 物流中心 values ( '6','6通快递','6通大爷','天津大','060606','' ) insert into 仓库 values ( '066','南开仓库','南大号','6660006' ) insert into 存放 values ( '0006','066','666','6','Jul6' ) insert into 管理 values ( '6','066','60','Jul_6st' ) insert into 制造 values ( '666','0006','00666','6' ) insert into 运输 values ( '66','066','606' ) insert into 提取 values ( '6','0006','66' ) --开始输入数据 insert into 制造商 values ( '555','百货企业','5女士','城市','555555','' ) insert into 零售商 values ( '55','超市','5先生','零售商','0005550','' ) insert into 产品 values ( '0005','产品','神秘品牌','根','555' ) insert into 物流中心 values ( '5','5通快递','5通大爷','天津大','050505','' ) insert into 仓库 values ( '055','南开仓库','南大号','5550005' ) insert into 存放 values ( '0005','055','555','5','Jul5' ) insert into 管理 values ( '5','055','50','Jul_5st' ) insert into 制造 values ( '555','0005','00555','5' ) insert into 运输 values ( '55','055','505' ) insert into 提取 values ( '5','0005','55' ) --开始输入数据 insert into 制造商 values ( '444','百货企业','4女士','城市','444444','' ) insert into 零售商 values ( '44','超市','4先生','零售商','0004440','' ) insert into 产品 values ( '0004','产品','神秘品牌','根','444' ) insert into 物流中心 values ( '4','4通快递','4通大爷','天津大','040404','' ) insert into 仓库 values ( '044','南开仓库','南大号','4440004' ) insert into 存放 values (
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 行业资料 > 物流/供应链

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服