工厂物资管理数据库系统_第1页
工厂物资管理数据库系统_第2页
工厂物资管理数据库系统_第3页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、工厂物资管理数据库系统设计报告班级:11级信班学号:31112300510姓名:贺媛目录一、设计任务说明 2二、 需求分析2三、概念模型设计31. 实体E-R图设计32. 实体联系描述53. 全局概念结构 E-R图设计 6四、逻辑模型设计7五、物理模型设计81. 数据库设计82. 数据表描述:83 触发器:1.04. 视图:1.1.5. 存储过程:1.1.六、数据库实施.1.1.1. 创建数据库:1.1.2. 创建备份文件: 1.23. 创建数据表文件 1.23. 创建索引 1.64. 创建触发器: 1.75. 创建视图: 2.06. 修改语句 2.0七、总结 2.3八、参考文献 2.4一、设

2、计任务说明1. 理解数据库应用与工厂物资管理体系;2. 掌握模型设计定义以及如何用数据库实现创建;3. 掌握数据库实现管理以及语句、数据上的修改;二、需求分析通过对工厂物资管理工作过程及数据流图的认真分析,得到如下的有用信息:1. 工厂物资管理设计多种零件的存放。2. 每件零件需要记录零件号码、条形码、类别、价格、出厂日期等基本信息。3. 除此之外,还需要记录零件的其他相关信息,如零件供应商的信息,存放的仓库信息、何种项目需要使用何种零件等。4. 同时需要提供对信息的添加、编辑、删除等操作。5. 供应商(supplier )信息,包括的数据项有:供应商号、姓名、账号、地址、 电话号码。6. 项

3、目(project )信息,包括的数据项有:项目号、预算、开工日期。7. 零件(part)信息,包括的数据项有:零件号、名称、规格、单价、描述。8. 仓库(warehouse )信息,包括的数据项有:仓库号、面积、地址、电话 号码。9. 职工(staff)信息,包括的数据项有:职工号、姓名、性别、年龄、职称三、概念模型设计1. 实体E-R图设计(1)供应商:供应商号、姓名、地址、电话号、账号。图3.1供应商实体E R图(2) 零件:编号、名称、仓库号、描述、单价、规格图3.2零件商实体E R图(3) 项目项目号、预算、开工日期。项目图3.3项目实体E R图(4) 仓库:仓库号、面积、电话号、管

4、理号、职工号。仓库图3.4仓库实体 E R图(5) 职工:姓名、年龄、名称、职工号。图3.5职工实体E R图2. 实体联系描述采购部门与供应商的联系,为多个项目提供多种零件,供应商、项目和零 件三者之间具有多对多的联系。仓库管理部门主要记录零件数量情况,一间仓库可以存放多种零件,一种零件可以存放在多建仓库中,因此仓库和零件之间具有多对多的联系, 用数量来 表示某种零件在某建仓库中的数量 人事部门要安排职工的工作任务,一间仓库有多个职工当仓库保管员,一个职工只能在一间仓库工作,因此仓库和职工之间存在一对多的联系。 职工之间 具有领导-被领导关系,即仓库主任领导若干保管员,因此直供实体具有一对 多

5、的联系。3. 全局概念结构E-R图设计四、逻辑模型设计下面是“工厂物资管理”的 E-R 数据模型转换成关系模型的所有模型( 1)根据规则 1,5 实体对应以下 5 个关系模式。 仓库资料(仓库号、面积、电话号码) ,主键为仓库号。 零件资料(零件号,名称,规格,单价,描述) ,主键为零件号。 供应商资料(供应商号,姓名,地址,电话,账号) ,主键为供应商号。 项目资料(项目号,预算,开工日期) ,主键为项目号。 职工资料(职工号,姓名,年龄,职称) ,主键为职工号。(2 )根据规则 2,仓库与零件之间存在多对多的关系,对应关系模式如下。 库存量(仓库号,零件号,库存量) ,主键为仓库库与零件号

6、的组合。(3)根据规则 3 ,仓库与职工实体之间存在一对多的二元联系,对应的关 系模式如下。工作情况表(职工号、仓库号、工作时间) ,主键为职工号。(4)根据规则 5 ,供应商、项目与零件三实体之间的三元联系,对应的关 系模式如下。供应情况表(供应商号、零件号、项目号 供应量),主键为项目号,供 应商号与零件号的组合。(5)根据规则 7 ,将职工实体拆分为普通员工和班长两个子集,两子集之 间存在一对多的联系,对应的关系模式如下。普通员工(职工号,姓名,年龄) ,主键为职工号。 班长(工号,姓名,年龄) ,主键为工号。领导(职工号),主键为职工号。五、物理模型设计1. 数据库设计(1) 逻辑数据

7、库名称:goodsMa nagme nt(2) 数据文件:goods DAT.MDF,始初大小为3MB,最大空间为20MB,增 加量为2MB 。(3) 日志文件:goods LOGLDF,始初大小为1MB,最大空间为20MB, 增加量为2MB。(4) 备份设置名:BACKUP ; goodsbackup.dat 。2. 数据表描述:项目资料表字段类型长度可否为空备注项目号Int否主键预算Int可开工日期datetime否仓库资料表字段类型长度可否为空备注仓库号Int否主键面积Int否电话号码Char15否零件资料表字段类型长度可否为空备注零件号Int否主键名称Varchar30否规格Varch

8、ar20否电话号码Char15可描述Text可单价int否职工资料表字段类型长度可否为空备注职工号Int否主键姓名char8否年龄Int可职称char8可供应商资料表字段类型长度可否为空备注供应商号Int否主键姓名char8否地址Varchar20否电话号码char7账号Int库存情况表字段类型长度可否为空备注仓库Int否主键零件Int否库存量int否供应情况表字段类型长度可否为空备注供应商号Int否主键零件号Int否项目号Int否供应量Int工作情况表字段类型长度可否为空备注职工号Int否主键仓库号Int否工作时间datetime否3 .触发器:(1) 要求供应商资料中的供应商号被修改时,供

9、应情况表中的供应商号也被修改。名称:goodsid、(2)要求零件资料中的零件号被修改时, 供应情况表与库存情况表中的零件号也被修改。名称:goodsidl、(3)要求项目资料中的项目号被修改时,供应情况表中的项目号也被修改。名称:goodsid2、(4)要求供应商资料中的供应商号只有在供应情况表中的相应供应商号不存在时,方可删除。名称: goodsid3 、(5)要求零件商资料中的零件号只有在供应情况表与库存情况表中的相应零件号不存在时,方可删除。名称: goodsid4 、(6)要求项目资料中的项目号只有在供应情况表中的相应项目号不存在时,方可删除。名称: goodsid5 。4. 视图:

10、为用户提供包含供应商姓名、零件号、项目号、和零件总价格的视图。名称: project5. 存储过程:根据用户所提交的职工号,为用户提供职工信息。名称: lookworker 。六、数据库实施1. 创建数据库:create database goodsManagmenton(name = goosaDAT,filename = 'c:SQLgoodsDAT.MDF',size = 3,maxsize=20,filegrowth = 2)LOG on(name = 物资管理 LOG,filename='c:SQLgoodsLOG.ldf',size=1,maxsiz

11、e=20,filegrowth=2)2. 创建备份文件:sp_addumpdevice'disk','BACKUP1','D:sqlgoodsbackup1.dat' gobackup database goodsManagment to BACKUP13. 创建数据表文件create table 仓库资料(仓库号 int primary key,面积 int,电话号码 char(15)仓库昙面鬆电诣导码图6.1仓库数据表显示图create table零件资料(零件号 int primary key,名称 varchar(30),规格 varch

12、ar(20),电话号码 char(15),描述Text,单价int)零件号电话号码单价101|100味母GB 233123456 78OTS7450133CS-124小10AU*AU1fJUL图6.2零件数据表显示图create table 项目资料(项目号 int primary key,预算int,开工日期datetime)项目码硕賈开工曰期120|2QLJ-7-lQ;QO;0O|2302C13-?-10:0n:0O36020132 0:00:00*NJLL图6.3项目数据显示图create table职工资料(职工号 int primary key,姓名 char(8),年龄int,职称

13、 char(8)职工号姓名年龄职称40寰理1ZQ2张良31经理12A3项羽20员工ALS1NULLNULLAU2图6.4职工数据显示图create table 供应商资料(供应商号 int primary key,姓名 char(8),地址 varchar(20),电话号码char(7),账号int)供应苗号地址电惦号晒嫌号a芋新上再20021192003斗 K1237S54K611U*ALtLNULLNULL图6.5供应商数据显示图create table库存情况表仓库号int,零件号int,库存量int)零件号库存量口k I能11011000381D230007?1035200*山迦图6.

14、6仓库情况表显示图create table供应情况表供应商号int references 供应商资料(供应商号),零件号int references零件资料(零件号),项目号int references 项目资料(项目号),供应量int)供应商号顶目号供应量卜测11011100Q2M210223000200310335200AOZMA2.范1NLLL图6.7供应商情况表显示图create table工作情况表职工号int references 职工资料(职工号), 仓库号int references 仓库资料(仓库号),工作时间datetime)职工号仓库号工作时闵12012013-7-1 0

15、:00:00据2O1S-7-1OJ0OIOO772013-7-2 0:00:00NULL图6.8工作情况表显示图3. 创建索引create non clusteredindex IX_ 仓库号 on仓库资料(仓库号asc)create non clusteredindex IX_零件号on 零件资料(零件号asc)create non clustered index IX_项目号on项目资料(项目号asc) create non clustered index IX_职工号on 职工资料(职工号asc) create non clustered index IX_供应商号on供应商资料(供应商

16、号asc) create non clustered index IX_ 仓库号 on 库存情况表 (仓库号 asc)create nonclusteredindex IX_ 供应商号 on 供应情况表 ( 供应商号 asc)create nonclusteredindex IX_ 职工号 on 工作情况表 (职工号 asc)4. 创建触发器:(1)create trigger goodid on供应商资料for updateasbeginif (columns_updated()&01)0update 供应情况表set 供应情况表 .供应商号 = (select a. 供应商号 fr

17、om inserted a) where 供应情况表 .供应商号 = (select b. 供应商号 from deleted b) end(2 ) create trigger good_1 on零件资料for updateasbeginif(columns_updated()&01)0update 供应情况表set 供应情况表 .零件号 =(select 零件号 from inserted) where 供应情况表 .零件号 =(select 零件号 from deleted) update 库存情况表set 库存情况表 .零件号 =(select 零件号 from inserte

18、d) where 库存情况表 .零件号 =(select 零件号 from deleted) end(3 ) create trigger good_2 on项目资料for updateasbeginif(columns_updated()&01)0update 供应情况表set 供应情况表 .项目号 =(select 项目号 from inserted) where 供应情况表 .项目号 =(select 项目号 from deleted) end(4 ) create trigger good_3 on供应商资料for deleteasif exists(select 供应商号 f

19、rom deleted a供应情况表 )where a. 供应商号 in(select 供应情况表 .供应商号 from)beginraiserror(' 因在供应商资料中存在,不得删除此条记录 !',16,1) rollback transactionend(5 ) create trigger good_5 on 零件资料for deleteasif exists(select 零件号 from deleted awhere a. 零件号 in(select 供应情况表 .零件号 from 供应情况表 ) ora.零件号in (select库存情况表.零件号from 库存情

20、况表)beginraiserror(' 因在零件资料中存在,不得删除此条记录 !',16,1)rollback transactionend(6 ) create trigger good_4 on 项目资料for deleteasif exists(select 项目号 from deleted awhere a. 项目号 in(select 供应情况表 .项目号 from 供应情况表 ) ) beginraiserror(' 因在零件资料中存在,不得删除此条记录 !',16,1)rollback transactionend5. 创建视图:create VI

21、EW project( 供应商姓名 ,零件名 ,项目号 ,零件总价格 )asselect 姓名 ,名称,项目号 ,供应量 * 单价from 供应商资料 ,供应情况表 ,零件资料where 供应商资料 .供应商号 = 供应情况表 .供应商号 and 供应情况表 .零件号 = 零件资料 . 零件号创建存储过程:create procedure lookworkerid intasselect 职工号 from 职工资料 where 职工资料 . 职工号 = id6. 修改语句(1) use goodsManagement goupdate 供应商资料set 供应商号 = 1002where 供应商

22、号 = '2001'goselect * from 供应商资料:结果_j消息1供应商号姓名地址电话号码账号j 1002i李斯上每133456783321«2泗2汇苏121459G51E74&11.332003江南4551237BW5&611fl图6.9供应商修改显示图(2) use goodsManagement go update 项目资料set项目号=8 where 项目号='1'goselect * from 项目资料项吕号预.开工目期123020134)7431 0Q;00:00 QW236020图6.10项目修改显示图(3)

23、use goodsManagement go update 零件资料set零件号=106 where 零件号='102'goselect * from 零件资料P结果j稍息垂件号!名称规榕电诣号码粗,单价11D1GB-123134&673216大1002103GE'1241234Sfi9S732lB103I10&G0-223丈&0图6.11零件修改显示图(4) use goodsManagement godelete from供应商资料where 供应商号='1002'goselect*from 供应商资料(5) use goodsManagement godelete from零件资料where 零件号='101' goselect*from零件资料(6) use goodsManagement godelete from 项目资料where 项目号=3goselect*from 项目资料七、总结本系统是一个典型的信息管理系统, 其主要通过数据库系统设计方法进行课 题选择、需求分析、系统设计等步骤实

温馨提示

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

最新文档

评论

0/150

提交评论