工厂数据库管理系统.docx

上传人:b****5 文档编号:28099772 上传时间:2023-07-08 格式:DOCX 页数:40 大小:123.23KB
下载 相关 举报
工厂数据库管理系统.docx_第1页
第1页 / 共40页
工厂数据库管理系统.docx_第2页
第2页 / 共40页
工厂数据库管理系统.docx_第3页
第3页 / 共40页
工厂数据库管理系统.docx_第4页
第4页 / 共40页
工厂数据库管理系统.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

工厂数据库管理系统.docx

《工厂数据库管理系统.docx》由会员分享,可在线阅读,更多相关《工厂数据库管理系统.docx(40页珍藏版)》请在冰豆网上搜索。

工厂数据库管理系统.docx

工厂数据库管理系统

 

课程设计说明书

题目工厂数据库管理系统

系(部)计算机科学与技术系

专业(班级)

姓名

学号

指导教师

起止日期

课程设计任务书

课程名称:

数据库系统原理

设计题目:

数据库系统课程设计

工厂数据库管理系统

1、某工厂需建立一个管理数据库存储以下信息:

工厂包括厂名和厂长名。

一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。

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

一个车间生产多种产品,产品有产品号、产品名称和价格。

一个车间生产多种零件,一个零件也可能为多个车间制造。

零件有零件号、重量和价格。

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

产品与零件均存入仓库中。

厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。

2、系统功能的基本要求:

按照一定条件查询、统计工人和产品等基本信息,能模拟工厂生产过程中对原材料(零件)、产品检测、库存环节的管理。

各阶段具体要求:

1、需求分析阶段

●定义数据项的含义和取值

●定义目标系统的数据流

2、概念结构设计阶段

●画出实体模型E-R图

3、逻辑结构设计阶段

●将实体模型转化为关系模型

●给出每个关系的主关键字和函数依赖集

●分析你所设计的关系数据库模式是否属于3NF

4、物理设计阶段

●确定所有字段的名称、类型、宽度、小数位数及完整性约束

●确定数据库及表的名称及其组成

●确定索引文件和索引关键字

5、数据库安全及维护设计阶段

●设计一个适合的数据库安全策略(用户身份认证、访问权限、视图)

●为了实现复杂的数据完整性约束,设计适当的触发器

●设计一个适合的数据库备份策略

6、实施阶段

●要求所有操作必须在查询分析器中用SQL语句或系统存储过程完成。

设计工作量:

(1)软件设计:

完成问题陈述中所提到的所有需求功能。

(2)论文:

要求撰写不少于3000个文字的文档,详细说明各阶段具体要求。

工作计划:

安排两周时间进行课程设计,软件开发步骤如下,第一周完成1~4,第二周完成5~8,论文同步进行;

1)选定题目

2)需求分析

3)概念结构设计

4)逻辑结构设计

5)物理设计

6)数据库安全及维护设计

7)数据库上机实现

8)答辩

 

设计工作量:

40课时

工作计划:

见课表

 

指导教师签名:

         日期:

        

教研室主任签名:

       日期:

        

系主任签名:

         日期:

      

长沙学院课程设计鉴定表

姓名

学号

专业

班级

设计题目

工厂数据库管理系统

指导教师

指导教师意见:

 

评定等级:

教师签名:

日期:

答辩小组意见:

 

评定等级:

     答辩小组长签名:

     日期:

    

教研室意见:

 

教研室主任签名:

日期:

 

系(部)意见:

 

系主任签名:

        日期:

     

说明

课程设计成绩分“优秀”、“良好”、“及格”、“不及格”四类;

摘要

根据而今信息时代,信息越来越多,越复杂,这时就需要一种管理数据的软件,本次课程设计运用SQLserver2008来实现数据的管理,本次试验通过SQL语句来实现工厂的流程,使工厂运行效率达到最大值,需要对其进行分析需求,逻辑设计,物理设计,安全性分析,权限设置等操作。

关键词:

SQL管理数据工厂

5.1创建数据库系统的关系模型……………………………………………………………………………11

九、总结…………………………………………………………………………………………………………25

十.附录………………………………………………………………………………………………………..26

一、引言

1.1编写目的

本文档是数据库系统设计文档的组成部分,编写此数据库设计文档的目的是:

根据工人数据库管理系统建立一个数据库存储信息,数据库表名包含工厂,车间,工人,产品,零件,仓库。

其中工厂包括多个车间和多个仓库,车间有多个工人,一个车间生产多种产品和多种零件,一个零件也可能为多个车间制造,一个产品由多种零件组成,一种零件也可装配出多种产品,产品和零件均存入仓库中等信息,结合此信息通过sql语言来实现此管理系统的运用,模拟工厂生产过程中队原材料(零件)、产品检测、库存环节的管理。

本文档遵循《《工人数据库管理系统和开发规范》》。

本文档的读者对象是需求人员,系统设计人员,开发人员,测试人员。

 

1.2参考资料

列出有关资料的名称、作者、文件编号或版本等。

参考资料包括:

a.需求说明书、架构设计说明书等;

b.本项目的其他已发表的文件;

c.引用文件、资料、软件开发标准等。

资料名称

作者

文件编号、版本

《数据库系统概论》

王珊、萨师煊

2006年5月第4版

《《数据库系统原理》实验指导书

徐长梅、汪祥

2011年9月第一版

二、需求规约

2.1业务描述

(1)数据库系统创建的背景

运用数据库相关信息来实现工人管理系统的生产和运作。

(2)数据库系统要完成的业务流程及工作内容

根据工人管理系统模拟生产过程,实现对原材料、产品检测、库存的管理

(4)揭示该数据库的资源需求和设计约束

根据工人的各个生产所需的阶段,来建立不同的表,并将这些表连接起来,画出实体模型E-R图,确定所有字段的名称、类型、宽度、小数位数及完整性约束,并将实体模型转化为关系模型,并设计关键字,以及设计适当的触发器

2.2需求分析

(1)分析该业务流程的内在联系

分析业务流程后得出:

工厂与车间为一对多关系,车间与工人为一对多关系,车间与产品为一对多关系,仓库与产品为一对多关系,仓库与零件为一对多关系,车间与零件为多对多关系,产品和零件为多对多关系,工厂与仓库为一对多关系

(2)对象处理如下:

对象处理:

工厂信息:

厂名、厂长名。

车间信息:

车间号、车间主任姓名、地址和电话。

职工信息:

职工号、姓名、年龄、性别和工种。

产品信息:

产品号、产品名称和价格。

零件信息:

零件号、重量和价格。

仓库信息:

仓库号、仓库主任姓名和电话。

(3)实现功能与分析如下:

实现功能:

实现功能其中需要注意的是,安全性需要根据其需要来给予其一定程度的安全性,再通过用户授权机制,通过用户登陆来识别用户级别,再根据这个级别来分配用户权限,从而实现更高层次的安全保密功能。

完整性要求描述各信息间的关联关系和制约关系,需要根据各个值的实际情况来分析数据的数据范围及注意其是否为NULL(空),根据实际需要来满足要求。

分析:

此系统首先画出了其E-R图,并用word文档插入表格并写入各个表的信息,在对work(工厂信息)进行给该和查询,包括:

创建数据库信息,查询各表信息,更改element(零件表)信息,workman(工人表)信息,建立一个名为manage存储过程,实现修改element(零件表)信息,workman(工人表)信息。

对于安全性操作,建立了一个名为chenquanyu的登录名,名为cqy的用户,并赋予其表element(零件表),product(产品表)和storage(仓库表)的privilege(所以权限)操作,对product(产品表)创建一个名为IS_product的视图,对workman(工人信息表)创建一个名为IS_work的视图。

并对product(pno)(产品号)和element(eno)创建一个索引,并删除其索引。

创建一个名为tri_update_delete_product的触发器,来触发更新产品价格,并触发删除产品号为3的信息。

最后创建一个磁盘备份,名字为work_full,地址为'd:

beifen\work.bak',并实现完全备份和日记备份。

三、数据库环境说明

提示:

(1)说明所采用的数据库系统,设计工具,编程工具等

(2)详细配置

例如:

数据库实例

数据库系统

数据库部署环境

数据库设计工具

数据库存放位置

说明

工人数据库管理系统

SQLserver2008

硬件:

2GB内存,512M以上软件:

windowsxp

MicrosoftOfficeVisio2003和SQLserver2008

D盘根目录

查询、统计工人和产品基本信息,模拟工厂生产过程

四、数据库的命名规则

4.1数据库对象命名规则

数据库对象

命名规则

备注

功能描述字符串

例如:

factory工厂表

视图

view_功能描述字符串

例如:

view_factory工厂视图

索引

index_功能描述字符串

例如:

index_factory工厂索引

存储过程

procedure_功能描述字符串

例如:

procedure_factory工厂存储过程

触发器

trigger_功能描述字符串

例如:

trigger_factory工厂触发器

4.2数据项编码规则

数据项

命名规则

数据类型

长度范围

备注

车间号

车间序号(两位整数00-99)

定长字符串

10位

workshop_no车间号

职工姓名

姓名(不定长)

不定长字符串

4位

wname职工姓名

产品价格

价格(不定长)

浮点型

10

pprice产品价格

五、逻辑设计

一个m:

n联系转换为一个关系模式。

与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

一个1:

n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

一个1:

1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合

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

给表信息包含如下:

工厂(厂名,厂长名)

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

工人(职工号,姓名,年龄,性别,工种)

产品(产品号,产品名称,价格)

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

仓库(仓库号,仓库主任姓名,电话)

生产(车间号,零件号,生产日期)

组装(产品号,零件号,组装数)

存入(仓库号,产品号,零件号,存储量)

5.1创建数据库系统的关系模型如下

工厂信息表:

factory

字段中文名

字段名

数据类型

是否为空

约束

厂名

fno

varchar(10)

NOTNULL

Primarykey

厂长名

fdname

vachar(10)

//工厂与车间一对多

车间信息表:

workshop

字段中文名

字段名

数据类型

是否为空

约束

车间号

workshop_no

char(10)

NOTNULL

Primarykey

车间主任姓名

wdname

varchar(10)

地址

wAddress

varchar(10)

电话

wtel

varchar(20)

厂名

fno

varchar(10)

NOTNULL

Foreignkey(外键)

//车间与工人一对多

工人信息表:

workman

字段中文名

字段名

数据类型

是否为空

约束

职工号

wno

char(10)

NOTNULL

Primarykey

姓名

wname

varchar(10)

年龄

wage

int

工种

wtype

varchar(10)

车间号

workshop_no

char(10)

NOTNULL

Foreignkey(外键)

//车间与产品一对多,仓库与产品一对多

产品信息表:

product

字段中文名

字段名

数据类型

是否为空

约束

产品号

pno

varchar(10)

NOTNULL

Primarykey

名称

pname

varchar(10)

价格

pprice

float

车间号

workshop_no

char(10)

NOTNULL

Foreignkey(外键)

仓库号

sno

char(10)

NOTNULL

Foreignkey(外键)

//仓库与零件一对多

零件信息表:

element

字段中文名

字段名

数据类型

是否为空

约束

零件号

eno

char(10)

NOTNULL

Primarykey

重量

eweight

float

价格

eprice

float

仓库号

sno

char(10)

NOTNULL

Foreignkey(外键)

//车间与零件多对多

车间与零件信息表:

workshop_element

字段中文名

字段名

数据类型

是否为空

约束

车间号

workshop_no

char(10)

NOTNULL

Primarykey

零件号

eno

char(10)

NOTNULL

Primarykey

//产品和零件多对多

产品与零件信息表:

product_element

字段中文名

字段名

数据类型

是否为空

约束

产品号

pno

varchar(10)

NOTNULL

Primarykey

零件号

eno

char(10)

NOTNULL

Primarykey

//工厂与仓库一对多

仓库信息表:

storage

字段中文名

字段名

数据类型

是否为空

约束

仓库号

sno

char(10)

NOTNULL

Primarykey

仓库主任姓名

sdname

电话

stel

厂名

fno

varchar(10)

NOTNULL

Foreignkey(外键)

 

六、物理设计

6.1表汇总

表名

功能说明

表element

查询,插入,索引,存储过程

表product

查询,插入,修改,视图,索引,权限设置,创建存储过程

表storage

查询,更新,删除,权限设置,存储过程

 

6.2工厂表如下:

1.工厂信息表:

factory

表名

工厂信息表:

factory

数据库用户

work

主键

fno

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

fno

Varchar(10)

N

主键

2

fdname

Varchar(10)

sql脚本

createtablefactory

fnovarchar(10)NOTNULLprimarykey,

fdnamevarchar(10)

备注

[备注信息]

 

2.车间信息表:

workshop

表名

车间信息表:

workshop

数据库用户

work

主键

workshop_no

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

workshop_no

char(10)

N

主键

2

wdname

varchar(10)

3

waddress

varchar(10)

fno

varchar(10)

N

Foreignkey(外键)

sql脚本

createtableworkshop

workshop_nochar(10)NOTNULLprimarykey,

wdnamevarchar(10),

waddressvarchar(10),

wtelvarchar(20),

fnovarchar(10)NOTNULL,

foreignkey(fno)referencesfactory(fno)

备注

工厂与车间一对多

 

3.工人信息表:

workman

表名

工人信息表:

workman

数据库用户

work

主键

wno

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

wno

char(10)

N

主键

2

wname

varchar(10)

3

wage

int

4

wtype

varchar(10)

5

workshop_no

char(10)

N

Foreignkey(外键)

sql脚本

createtableworkman

wnochar(10)NOTNULLprimarykey,

wnamevarchar(10),

wageint,

wtypevarchar(10),

workshop_nochar(10)NOTNULL,

foreignkey(workshop_no)referencesworkshop(workshop_no)

备注

车间与工人一对多

 

4.产品信息表:

product

表名

产品信息表:

product

数据库用户

work

主键

pno

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

pno

varchar(10)

N

主键

2

pname

varchar(10)

3

pprice

float

4

workshop_no

char(10)

N

Foreignkey(外键)

5

sno

char(10)

N

Foreignkey(外键)

sql脚本

createtableproduct

pnovarchar(10)NOTNULLprimarykey,

pnamevarchar(10),

ppricefloat,

workshop_nochar(10)NOTNULL,

snochar(10)NOTNULL,

foreignkey(workshop_no)referencesworkshop(workshop_no),

foreignkey(sno)referencesstorage(sno)

备注

车间与产品一对多,仓库与产品一对多

 

5.零件信息表:

element

表名

零件信息表:

element

数据库用户

work

主键

eno

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

eno

char(10)

N

主键

2

eweight

float

3

eprice

float

4

sno

char(10)

N

Foreignkey(外键)

sql脚本

createtableelement

enochar(10)NOTNULLprimarykey,

eweightfloat,

epricefloat,

snochar(10)NOTNULL,

foreignkey(sno)referencesstorage(sno)

备注

仓库与零件一对多

6.车间与零件信息表:

workshop_element

表名

车间与零件信息表:

workshop_element

数据库用户

work

主键

workshop_no,eno

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

fno

workshop_no

char(10)

N

主键

2

fdname

eno

char(10)

N

主键

sql脚本

createtableworkshop_element

workshop_nochar(10)NOTNULL,

enochar(10)NOTNULL,

primarykey(workshop_no,eno),

foreignkey(workshop_no)referencesworkshop(workshop_no),

foreignkey(eno)referenceselement(eno)

备注

车间与零件多对多

7.产品与零件信息表:

product_element

表名

产品与零件信息表:

product_element

数据库用户

work

主键

pno,eno

其他排序字段

索引字段

序号

字段名称

数据类型(精度范围)

允许为空Y/N

唯一Y/N

区别度

默认值

约束条件/说明

1

pno

varchar(10)

N

主键

2

eno

char(10)

N

主键

sql脚本

createtableproduct_element

pnovarchar(10)NOTNULL,

enochar(10)NOTNULL,

primarykey(pno,eno),

foreignkey(pno)referencesproduct(pno),

foreignkey(eno)referenceselement(eno)

备注

产品和零件多对多

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1