仓库管理系统数据库课程设计样本内容摘要:

沈阳大学 图 3 货物与管理员关系图 ……… 图 4 货物基本信息实体图 …… .. 图 5 管理员基本信息实体图 图 6 库存表基本信息实体图 货物 现有库存 名称 编号 所入仓库号 管理员 姓名 地址 联系方式 工作证号 仓库表 货物号 货物号 现有库存 最大库存 最小库存 供应商 姓名 地址 管理员 联系方式 工作证号 课程设计说明书 No 8 沈阳大学 m 1 n . ……… . m m 1 1 n 图 7 合并部分视图生成 ER 图 逻辑结构设计 ER 图向关系模型的转换 (1)一个 1: 1 联系可转换为一个独立的关系模式,可以与任意一端对应的关系模式合并;供货记录 联系方式 供货 日期 数量 货物 类型 名称 编号 单价 入库 日期 数量 销售商 姓名 地址 销货记录 联系方式 管理 仓库 姓名 性别 现有库存 最大库存 最小库存 聘期 工资 仓库号 货物号 存储 课程设计说明书 No 9 沈阳大学 (2)一个 1: n 联系可以转换为独立的关系模式,也可以与 n 端对应的关系模式合并; (3)一个 m:n 联系转换为一个关系模式。 与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分; 将实体转化为关系 模式。 根据图 7 所示的货物管理的基本 ER 图,将其中的实体转化为如下关系,关系的主码用下划线标出,外码用波浪线标出。 由 ER 图转换成关系模式: ( 1)供应商( 供应商名称 ,联系方式,地址, 供应记录的货物号 ) ( 2)货物( 货物号 , 供应商名称 , 销售商名称 , 所入仓库号 ,名称,现有库存) ( 3)仓库( 仓库号,货物号 ,现有库存,最大库存,最小库存) ( 4)销售商( 销售商名称 ,联系方式,地址, 销货记录的货物号 ) ( 5)管理员( 工作证号,管理的仓库号 ,名字,联系方式,家庭住址) 判断每个表分别属于第几范式 ( 1)由 供应商表 (供应商名称,联系方式,地址, 供应记录的货物号 )写出数据依赖 : 供应商姓名 →联系方式, 供应商姓名 →地址, 供应商姓名 →供应记录的货物号 该表中的各个元组都不可再分、并且无部分函数依赖和传递函数依赖、主码都是候选码,所以该表满足 BCNF 范式。 ( 2)由销售商表 (销售商名称,联系方式,地址, 销货记录的货物号 )写出数据依赖 : 销售商名称 →联系方式, 销售商名称 →地址, 销售商名称 →销货记录的货物号 该表中的每个元组都不可再分、并且无部分函数依赖和传递函数依赖、主码都是候选码,所以该表也满足 BCNF 范式。 ( 3) 由管理员表 (工作证号,管理的仓库号,名字,联系方式,家庭住址)写出数据依赖 : (工作证号,管理的仓库号) → 名字,(工作证号,管理的仓库号) → 联系方式, (工作证号,管理的仓库号) → 家庭住址 该表中每个元组都不可再分并且无部分函数依赖和传递函数依赖、主码都是候选码,所以该表同样满足 BCNF 范式。 ( 4)由仓库表 (仓库号,货物号,现有库存,最大库存,最小库存)写出数据依赖 : (仓库号,货物号) → 现有库存,(仓库号,货物号) → 最大库存,(仓库号,货物号) → 最小库存 ( 5)由货物表 (货物号,供应商名称,销售商名称,所 入仓库号,名称,现有库存)写出数据依赖 : (货物号,供应商名称,销售商名称,所入仓库号) → 名称,(货物号,供应商名称,销售商名称,所入仓库号) → 现有库存 该表中各个元组都不可再分同样无部分函数依赖和传递函数依赖并且主码都是候选码,所以该表同样满足 BCNF 范式。 数据库的结构 根据总体结构图设计各表的结构,其相应标的定义如下: 表 1 供应商表 课程设计说明书 No 10 沈阳大学 字 段 类 型 长 度 是否主键 说 明 p_name 字符型 20 是 销售商名称 p_address 字符型 20 否 地址 p_telephone 字符型 20 否 电话联系方式 p_record 字符型 20 外键( good) 供货记录 表 2 货物表 字 段 类 型 长 度 是否主键 说 明 g_name 字符型 20 否 名称 g_id 字符型 20 是 货物号 p_name 字符型 20 是 供应商名称 s_name 字符型 20 是 销售商名称 w_id 数值型 20 是 所入仓库号 xianyoukucun 字符型 20 否 现有库存 表 3 销售商表 字 段 类 型 长 度 是否主键 说 明 s_name 字符型 20 是 销售商名称 s_address 字符型 20 否 销售商地址 s_telephone 字符型 20 否 销售商电话 s_record 字符型 20 外键( good) 销售记录 表 4 库存表 字 段 类 型 长 度 是否主键 说 明 w_id 字符型 20 是 仓库号 xanyoukucun 字符型 20 否 现有库存 zuidakucun 字符型 20 否 最大库存 zuixiaokucun 字符型 20 否 最小库存 g_id 字符型 20 是 所存货物号 表 5 管理员表 字 段 类 型 长 度 是否主键 说 明 课程设计说明书 No 11 沈阳大学 m_name 字符型 20 否 管理员姓名 m_telephone 字符型 20 否 管理员电话 m_address 字符型 20 否 管理员住址 m_id 字符型 20 是 工作证号 w_id 数值型 20 是 管理仓库号 创建基本表 在实际设计中最常用的存取方法是索引法,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索 的列上建立索引。 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。 才能充分利用索引的作用避免因索引引起的负面作用。 首先在数据库中建立一个货物管理系统数据库,然后分别建立各个子表,为提高查询速度,再为各个表建立索引。 生成的主要代码如下 (1)创建供应商表 create table provider ( p_name char(50) primary key, p_address char(50), p_telephone char(50), p_record char(50) ) (2)创建销售商表 create table salers ( s_name char(50) primary key, s_telephone char(50), s_address char(50), s_record char(50) ) (3)创建货物表 create table good ( g_id char(8) primary key, g_name char(20) , p_name char(50) primary key, s_name char(50) primary key, w_id int primary key, xianyoukucun char(50) , foreign key (p_name) references provider(p_name), foreign key (s_name) references salers(s_name), 课程设计说明书 No 12 沈阳大学 foreign key (w_id) references warehouse(w_id) ) (4)创建仓库表 create table warehouse ( w_id int, xianyoukucun int, zuidakucun int, zuixiaokucun int, g_id char(8), primary key (w_id ,g_id), foreign key (g_id) references good(g_id)。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。