工厂管理信息系统-数据库课程设计

 

 

软件工程专业

数据库原理及应用课程设计

 

 

 

 

 

 

 

 

                   设计题目:工厂管理信息系统

                       级:计HR  06——6 

                       号:0620010613

                       名:李承亮

 

 

 


工厂管理信息系统

摘要

 

本设计针对信息处理能力在现在化工厂中的重要作用,且作为工厂的生产基地——工厂也必须适应这一变化趋势的要求,也就是说工厂的建设、管理应该向着信息化、智能化、系统化、规范化和自动化的方向发展,基于这种社会发展的趋势,加之工厂个部门之间的本身的管理效率过低,工人与工厂管理者之间沟通差,商品发货和运输等问题的出现,使我了解到大部分工厂目前存在的隐患,那就是需要一个良好的管理系统来对整个工厂的动作实现信息化和智能化的管理。本设计通过需求分析、概要设计、逻辑设计、物理设计等几个阶段通过工厂各个实体之间的联系进行设计,并通过E-R图让使用者更加深切理解本程序内实体之间的关系,使之能更加快速的查询、删除和更改所建数据库的内容。并加入了备份和恢复策略部分,使内容更加完善。

关键字:系统开发;车间;信息管理;车间管理信息系统;

 

 

 

 

 

                                     


目录

 

1需求分析.................................................................................................... 1

1.1功能需求............................................................................................ 1

1.2数据字典............................................................................................ 1

2概念结构设计............................................................................................. 3

2.1实体................................................................................................... 3

2.2局部E-R........................................................................................ 3

2.3全局E-R........................................................................................ 6

3逻辑设计.................................................................................................... 6

    3.1E-R图转化为关系模式.......................................................................6

   3.2数据模型的优化...............................................................................7

4检验是否满足用户需求............................................................................. 9

5其他数据对象的设计............................................................................... 10

5.1视图.................................................................................................. 10

5.2触发器.............................................................................................. 10

5.3索引.................................................................................................. 10

6 备份及恢复策略...................................................................................... 11

6.1备份类型.......................................................................................... 11

6.2数据库恢复模式............................................................................... 11

6.3策略.................................................................................................. 11


1需求分析

1.1功能需求

工厂(包括厂名和厂长名)需建立数据库,用来管理以下信息

一个工厂有多少车间,每个车间有车间号,车间主任名,地址,电话

一个车间内有多少人,每个车间有多少职工号。姓名。年龄。性别和工种

一个车间生产多少种产品,品种有产品号,价格。

一个车间生产多少零件,一个零件也可能由多哥车间制造,零件有零件号。重量,和 

价格。

一个产品由多少零件组成,一种零件也可装配在多种产品内。

产品与零件均存入仓库中,厂内有多少仓库,仓库有仓库号,仓库保管员姓名,电话。

1.2数据字典

 数据项

                               1.1

             数据项名                        含义说明                       数据类型                        长 度

        厂名                工厂相关信息            char()                   20

        厂长名              工厂相关信息            char()                   6

        车间号              车间相关信息             int()                   10

        车间主任            车间相关信息            char()                   6

        地址                车间相关信息            char()                   20

        电话                车间相关信息             int()                   11

        员工号              员工相关信息             int()                   10

        职位编号            员工相关信息            char()                   20

       姓名                员工相关信息            char()                   6

        年龄                员工相关信息             int()                   2

        性别                员工相关信息            char()                   2

        工种                员工相关信息            char()                   20

        地址                员工相关信息            char()                   20

        电话                员工相关信息             int()                   11

        产品号              产品相关信息             int()                   10

        价格                产品相关信息             int()                   10

        产品名称            产品相关信息            char()                   20

        车间号              产品相关信息             int()                   10

        零件号              零件相关信息             int()                   10

        重量                零件相关信息             int()                   10

        价格                零件相关信息             int()                   10

        仓库保管员编号      仓库相关信息             int()                   10

        姓名                仓库相关信息            char()                   6            

        电话                仓库相关信息             int()                   11

 

数据结构

                               1.2

     数据结构名           含义说明                              组成

工厂表          定义了工厂的相关信息         厂名, 厂长

车间表          定义了车间的相关信息        车间编号,车间名称,车间主任编号,备注

员工表          定义了员工表的相关信息       员工号,姓名,工种,职位编号,年龄,

                                             性别,电话,地址

产品表          定义了产品的相关信息         编号,产品名称,价格,车间编号,备注

零件表          定义了零件的相关信息         零件号,重量,价格

    车间-零件表     定义了车间与零件的相关信息   车间编号,零件号

    产品-零件表     定义了产品与零件的相关信息   产品编号,零件号

仓库表          定义仓库的相关信息           编号, 管理员姓名,电话

  零件-仓库表     定义了零件与仓库的相关信息   仓库编号(主键),零件编号

产品-仓库表     定义了产品与仓库的相关信息   仓库编号(主键),产品编号

 

数据流

                               1.3

        数据流名                         来源                           去向

      产品信息                         车间                           仓库

      零件信息                         车间                           仓库

 

数据存储

                               1.4

       数据存储名         含义说明                             组成

     车间信息         储存了车间的相关信息     车间编号,车间名称,车间主任编号,备注

 员工信息         储存了员工的相关信息     员工号,姓名,工种,职位编号,年龄,

                                             性别,电话,地址

 产品信息         储存了产品的相关信息     编号,产品名称,价格,车间编号,备注

   零件信息         定义了零件的相关信息     零件号,重量,价格

   仓库信息         定义仓库的相关信息       编号, 管理员姓名,电话

 

 

处理过程

                                           1.5

     处理过程            含义说明                  输入                   输出

生产过程         查找所要生产的零件信息       零件信息                 零件

生产过程         查找所要生产的产品信息       产品信息                 产品

    储存过程         查找出零件储存的仓库号       仓库信息                 零件

    储存过程         查找出产品储存的仓库号       仓库信息                 产品

 

 

数据说明及处理方式

联机处理

ck(仓库)gc(工厂),cj(车间)yg(员工),

cp(产品),lj(零件),ljcj(零件与车间的联系)

cplj(零件与产品的联系),ljck(零件与仓库的联系)

cpck(产品与仓库的联系)

 

2概念结构设计

2.1实体

车间,员工,仓库,产品,零件

2.2局部E-R

   1员工-所属-车间

文本框: 1文本框: n

2-1 员工与车间的所属关系E-R

               事务规则:一个员工只能所属一个车间(1:1)

                         一个车间可以容纳多名员工(1:n)

   2)车间-生产-产品

文本框: n文本框: 1

2-2 产品的生产关系E-R

                   事物规则:一个车间能生产多种产品(1:n)

                             每个产品被一个车间生产(1:1)

   3)车间-生产-零件

文本框: n文本框: 1

2-3 零件的生产关系E-R

                   事物规则:一个车间能生产多种零件(1:n)

                             一个零件在一个车间生产(1:1)

   4)仓库-保管-零件

文本框: n文本框: 1

2-4零件的储存关系E-R

               事物规则:一个仓库能保管多种零件(1:n)

                         一个零件只能被一个仓库保管(1:1)

2.3全局E-R

 

文本框: n
 


文本框: n文本框: 1                            

文本框: 1
文本框: n
文本框: 1
 


文本框: 1                             

文本框: n
 


                 

文本框: n
文本框: 1
文本框: n
文本框: 1
 


                      

                

                        2-5系统全局E-R

3逻辑模式设计

3.1E-R图转化为关系模式

    逻辑结构设计的任务是将概念结构设计的E-R图,转化为与选用的 DBMS所支持的数据模型相符的逻辑结构,形成逻辑模型。

关系模型(第1数据项为主键):

工厂(厂名, 厂长名)

车间(车间号,车间主任,地址,电话,备注)

员工(职工号,姓名,工种,职位编号,年龄,性别,电话,地址)

产品(产品号,产品名称,价格,车间编号,备注)

零件(零件号,重量,价格)

仓库(仓库号,仓库保管员,姓名,电话)

车间-零件(车间号,零件号

产品-零件(产品号,零件号

零件-仓库(仓库号,零件号)

产品-仓库(仓库号,产品号)

 

 

 

3.2数据模型的优化

   

    将转化的关系模式进行优化,最终达到第三范式。

优化后的关系模式如下:

工厂(厂名, 厂长名)

车间(车间号,车间主任,地址,电话)

员工(职工号,姓名,工种,职位编号,年龄,性别,电话,地址)

产品(产品号,产品名称,价格,车间编号,备注)

零件(零件号,重量,价格)

仓库(仓库号,仓库保管员号,姓名,电话)

车间-零件(车间号,零件号

产品-零件(产品号,零件号

零件-仓库(仓库号,零件号)

产品-仓库(仓库号,产品号)

 

 

                              3.1 工厂信息表(gc

 

   字段名称                 数据类型            长度           约束            属性

   厂名                  char()              20          NOT NULL       主码

   厂长名                   char()              6          NOT NULL      非主属性

 

 

                              3.2 车间信息表(cj

 

   字段名称                 数据类型             长度           约束            属性

   车间号                   int()                  10          NOT NULL        主码

   车间主任                 char()                  6          NOT NULL     非主属性

   地址                     char()                  20         NOT NULL     非主属性

   电话                     int()                   11         NOT NULL     非主属性

   备注                     char()                  20         NOT NULL     非主属性

 

 

                              3.3 员工信息表(yg

 

   字段名称                 数据类型             长度           约束            属性

   职工号                    int()                 10           NOT NULL       主码

   姓名                      char()                6            NOT NULL     非主属性

   工种                      char()                20           NOT NULL     非主属性

   职位编号                  char()                20           NOT NULL     非主属性

   年龄                      int()                 2            NOT NULL     非主属性

   性别                      char()                2            NOT NULL     非主属性

   地址                      char()                 20           NOT NULL    非主属性

   电话                      int()                  11           NOT NULL     非主属性

 

 

                                  3.4 产品信息表(cp

 

    字段名称              数据类型             长度           约束            属性

    产品号                 int()                 10          NOT NULL        主码

    产品名称               char()                20          NOT NULL        非主属性

    价格                   int()                 10          NOT NULL        非主属性

    车间编号               int()                 10          NOT NULL        非主属性

    备注                   char()                20          NOT NULL        非主属性

 

 

                                 3.5 零件信息表(lj

 

    字段名称              数据类型             长度           约束            属性

    零件号                 int()                 10          NOT NULL        主码

    重量                   int()                 10          NOT NULL        非主属性

    价格                   int()                 10          NOT NULL        非主属性

 

 

                                 3.6 仓库信息表(ck

 

    字段名称              数据类型             长度           约束            属性

    仓库号                 int()                  10         NOT NULL        主码

    仓库保管员号           int()                  10         NOT NULL        非主属性

    姓名                   char()                 6          NOT NULL        非主属性

    电话                   int()                  11         NOT NULL        非主属性

 

 

                             3.7车间-零件生产关系表(cjlj

 

字段名称              数据类型             长度           约束            属性

车间号                 int()                  10         NOT NULL        外码

零件号                 int()                  10         NOT NULL        外码

 

 

                             3.8产品-零件组成关系表(cplj

 

    字段名称              数据类型             长度           约束            属性

产品号                  int()                 10         NOT NULL        外码

零件号                  int()                 10         NOT NULL        外码

                        

                              3.9零件-仓库存储关系表(ljck

 

    字段名称              数据类型             长度           约束            属性

零件号                   int()                10         NOT NULL        非属性

仓库号                   int()                10         NOT NULL        外码

 

 

                                  3.10产品-仓库存储关系表(cpck

 

     字段名称              数据类型             长度           约束            属性

 产品号                   int()                10         NOT NULL        非属性

     仓库号                   int()                10         NOT NULL        外码

 

 

4检验是否满足用户需求

 

u      例行事务需求

1:要在车间表中添加新的数据,基本格式为

Insert into <基本表名> [(〈列名1,<列名2),<列名n>]

VALUES (<列值1>,<列值2>,…,< 列值3>)

 2:要修改职位表的数据,则要使用UPDATE语句,基本格式为

 UPDATE<基本表名>

 SET<列名>=<表达式>[,<列名>=<表达式>]...

 [WHERE <条件>]

3:删除操作

 DROP VIEW〈视图名〉

u      查询事务需求

因为该课程设计要求是能实现查询各车间,生产的产品和零件信息,查询各仓库中产品和零件信息,所以重点在此。

     先说说明查询的基本格式:

     SELECET [ALL | DISTINCT]<列名或表达式>[别名1][<列名或表达式>[别名2]]…

     FROM<表名或视图名>[表别名1][<表明或视图名>[表别名2]]…

     [WHERE<条件表达式>]

     [GROUP  BY  <列名>][HAVING <条件表达式>]

     [ORDER BY 〈列名2][ASC|DESE]

例:

select  *

from cp ,lj

where cpbh in(select cpbh from ljcj),

      and ljno in(select ljno from ljcj);

 

select  *

from  cp,lj

where cpbh in(select cpbh fromcplj),

     and ljbh in(select ljbh from cplj);

 

5其他数据对象的设计

5.1视图

CREATE VIEW 车间

AS

SELECT a.*,  车间名称,  类型名称 FROM 车间 as a, 车间编号 as b, 备注 as c where a.车间编号=b.车间编号 and a.备注=c.备注

5.2触发器

CREATE TRIGGER AAA

AFTER INSERT OR UPDATA ON ARRoomprice

For each row

As begin

  Insert  into  ARRoomprice values (

‘5’ ,’0520010327’,’250’,’588’,’YES’);

End ;

5.3索引

CREATE UNIQUE index cpck_ck on table cpck (ck);

 

6 备份及恢复策略

6.1备份类型

数据库备份(Database Backups)
事务日志备份(Transaction Log Backup)
差异备份(Differential Database Backups)
文件和文件组备份(File and File Group Backup)

6.2数据库恢复模式

简单恢复(SimpleRecovery
完全恢复(Full Recovery
批日志恢复(Bulk-logged Recovery

6.3策略

在局域网内的任何一台工作站计算机上安装Microsoft Windows NTMicrosoft SQL Server,并在该机上建立一个与服务器中的数据库同名的数据库,利用Microsoft SQL Server系统本身提供的异机传送工具(Microsof SQL Enterprise Manager中的Tools菜单下的Database/Object Transfer)通过设置定时(可以是每周、每月、每日或每时)由计算机自动的把服务器中数据库的数据传送到该工作站机的数据库中,这样一旦服务器(操作系统)崩溃或Microsoft SQL Server系统崩溃时,只要重装服务器操作系统(Microsoft Windows NT)或重装Microsoft SQL Server仍然可以采用异机传送工具来通过该工作站机把数据传回至服务器的Microsoft SQL Server数据库中,以确保数据的安全恢复。

你可能感兴趣的:(数据库,产品,microsoft,null,sql,server,电话)