数据库原理与设计》课程设计---工厂管理系统.doc_第1页
数据库原理与设计》课程设计---工厂管理系统.doc_第2页
数据库原理与设计》课程设计---工厂管理系统.doc_第3页
数据库原理与设计》课程设计---工厂管理系统.doc_第4页
数据库原理与设计》课程设计---工厂管理系统.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

数据库-数据库原理与设计课程设计-工厂管理系统目录一、课程设计内容基本要求21、工厂管理数据库22、开发环境23、基本要求34、文档格式3二、需求分析41、功能需求42、数据字典43、数据流图6三、概念结构设计91、实体92、局部的E-R图103、总体的E-R图12四、逻辑模式设计121、将E-R图转化为关系模式122、数据模型的优化13五、检验是否满足用户需求15六、代码设计和界面设计17七、总结20一、课程设计内容基本要求1、工厂管理数据库工厂需建立一个管理数据库存储以下信息:*工厂信息包括工厂代号,工厂名,厂长名及工厂运营开销。*一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址,电话及每个月的车间运营开销。*一个车间有多个工人,每个工人有职工号、姓名、年龄、性别,工种及月工资。*一个车间生产多种产品,产品有产品号、产品名、规格,制造成本和销售价格。*一个车间生产多个零件,一个零件也可能由多个车间制造。零件有零件号、零件名,制造成本和销售价格。*一个产品由多个零件组成,一个零件也可装配出多种产品。*产品与零件均存入仓库中。*厂内有多个仓库,仓库有仓库号,仓库主任姓名、电话及仓库的运营成本。应完成的主要功能:(1)各种各样的管理功能,如工厂信息的管理功能,包括录入、修改、查询、输出工厂的信息;车间信息的管理功能,包括录入、修改、查询、输出车间的信息;还有工人,零件,产品,仓库等的信息管理功能。(2) 工厂的利润统计,包括月利润和年利润统计。(3) 能输出各种各样的报表,如工人工资月报表,年报表;每个车间生产的产品和零件数量的月报表;仓库存储产品和零件数量的月报表;工厂运营开销和车间运营开销的月报表等。2、开发环境 数据库选用微软的SQL SERVER。开发环境可以选择:(1)Delphi; (2)Visual Basic; (3) C+ builder; (4) Visual C+。只选择其中的一种软件开发工具就可以。3、基本要求(1)完成问题陈述中所提到的所有需求功能(2)要求撰写不少于2500个文字的文档。(3)文档中至少要包括:ER模型图、系统功能图、数据字典、表关系的详细说明。(4)用户界面设计:采用窗口式,色彩要柔和,界面要友好,操作要简单。(5)用户手册,描述软件系统所具有的功能及基本的使用方法。使用户能了解该软件的用途,并能确定在什么情况下、如何使用它。(6)操作手册,为操作人员提供该软件每一个运行的具体过程和相关知识,包括操作方法的细节等。4、文档格式(1)概述 包括项目背景、编写目的、软件定义、开发环境等内容。(2)需求分析 问题陈述、需完成的功能。 画出ER模型图(3)数据库逻辑设计 把ER模型图转换为关系表。 描述每一个基本表关系。要求所有关系达到BCNF范式。 定义视图、定义索引、主关键字、定义权限。(4)软件功能设计 画出软件功能图。 描述每一个功能所完成的任务情况。(5)界面设计 界面设计要合理。(6)结束语 写出完成本课程设计的心得,领会数据库理论与软件开发实践的关系。有哪些收获。软件还需要哪些改进。二、需求分析 1、功能需求本课题任务是开发一个小型的工厂管理系统,一个小型的工厂管理系统是实现对工厂基本信息(工厂、车间、工人、产品等数据)进行管理。主要功能:(1)各种各样的管理功能,如工厂信息的管理功能,包括录入、修改、查询、输出工厂的信息;车间信息的管理功能,包括录入、修改、查询、输出车间的信息;还有工人,零件,产品,仓库等的信息管理功能。(2) 工厂的利润统计,包括月利润和年利润统计。(3) 能输出各种各样的报表,如工人工资月报表,年报表;每个车间生产的产品和零件数量的月报表;仓库存储产品和零件数量的月报表;工厂运营开销和车间运营开销的月报表等。工厂需建立一个管理数据库存储以下信息:*工厂信息包括工厂代号,工厂名,厂长名及工厂运营开销。*一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址,电话及每个月的车间运营开销。*一个车间有多个工人,每个工人有职工号、姓名、年龄、性别,工种及月工资。*一个车间生产多种产品,产品有产品号、产品名、规格,制造成本和销售价格。*一个车间生产多个零件,一个零件也可能由多个车间制造。零件有零件号、零件名,制造成本和销售价格。*一个产品由多个零件组成,一个零件也可装配出多种产品。*产品与零件均存入仓库中。*厂内有多个仓库,仓库有仓库号,仓库主任姓名、电话及仓库的运营成本。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 数据结构名 含义说明 组成工厂表 定义了工厂的相关信息 厂名, 厂长车间表 定义了车间的相关信息 车间编号,车间名称,车间主任编号,备注员工表 定义了员工表的相关信息 员工号,姓名,工种,职位编号,年龄, 性别,电话,地址产品表 定义了产品的相关信息 编号,产品名称,价格,车间编号,备注零件表 定义了零件的相关信息 零件号,重量,价格 车间-零件表 定义了车间与零件的相关信息 车间编号,零件号 产品-零件表 定义了产品与零件的相关信息 产品编号,零件号仓库表 定义仓库的相关信息 编号, 管理员姓名,电话 零件-仓库表 定义了零件与仓库的相关信息 仓库编号(主键),零件编号 产品-仓库表 定义了产品与仓库的相关信息 仓库编号(主键),产品编号3、数据流图数据流1是 管理员登陆输入工厂的订单信息,以及生产的细节产品的规格等等数据流2 是 工厂生产好的产品后的产品信息 以及存入工厂图2.1 第0层数据流图图1.2 第1层数据流图 图1.31 第3层数据流图1.32 第3层数据流图1.33第3层数据流数据流数据存储 数据存储名 含义说明 组成 车间信息 储存了车间的相关信息 车间地址,车间名称,车间主任 员工信息 储存了员工的相关信息 姓名性别职位号,年龄,电话地址 产品信息 储存了产品的相关信息 产品号,价格,生产地 零件信息 定义了零件的相关信息 零件号,价格 仓库信息 定义仓库的相关信息 仓库号,电话处理过程 表1.5 处理过程名 含义说明 输入 输出生产过程 查找所要生产的零件信息 零件信息 零件生产过程 查找所要生产的产品信息 产品信息 产品 储存过程 查找出零件储存的仓库号 仓库信息 零件 储存过程 查找出产品储存的仓库号 仓库信息 产品三、概念结构设计1、实体通过对上面的系统总体分析,可以得到大概的实体-关系模型(E-R模型),如下:员工:姓名,性别,年龄,住址,电话,职位号车间:车间名称,车间地址,车间主任产品:产品号,价格,生成地零件:零件号,价格仓库:仓库电话,管理员,仓库号则对应的E-R如下:2、局部的E-R图 事务规则: 一个车间可以容纳多名员工(1:n) 事物规则:一个车间能生产多种零件(1:n) 事物规则:一个仓库能保管多种零件(1:n) 事物规则:一个零件能够组装多个产品(M:N) 一个产品可以由多个零件构成(N:M)3、总体的E-R图四、逻辑模式设计1、将E-R图转化为关系模式 逻辑结构设计的任务是将概念结构设计的E-R图,转化为与选用的DBMS所支持的数据模型相符的逻辑结构,形成逻辑模型。关系模型(第1数据项为主键):工厂(厂名, 厂长名)车间(车间号,车间主任,地址,电话,备注)员工(职工号,姓名,工种,职位编号,年龄,性别,电话,地址)产品(产品号,产品名称,价格,车间编号,备注)零件(零件号,重量,价格)仓库(仓库号,仓库保管员,姓名,电话) 车间-零件(车间号,零件号)产品-零件(产品号,零件号)零件-仓库(仓库号,零件号) 产品-仓库(仓库号,产品号)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 外码五、检验是否满足用户需求u 例行事务需求1:要在车间表中添加新的数据,基本格式为Insert into (列名1,列名2),)VALUES (,) 2:要修改职位表的数据,则要使用UPDATE语句,基本格式为 UPDATE SET=,=. WHERE 3:删除操作 DROP VIEW视图名u 查询事务需求因为该课程设计要求是能实现查询各车间,生产的产品和零件信息,查询各仓库中产品和零件信息,所以重点在此。 先说说明查询的基本格式: SELECET ALL | DISTINCT别名1,别名2 FROM表别名1,表别名2 WHERE GROUP BY HAVING ORDER BY 列名2ASC|DESE例:select *from cp ,ljwhere cpbh in(select cpbh from ljcj), and ljno in(select ljno from ljcj);select *from cp,ljwhere cpbh in(select cpbh fromcplj), and ljbh in(select ljbh from cplj);六、代码设计和界面设计下面是主要的界面:主要的源代码:登陆          %else Error+=登陆错误:没有次用户; Error=(String)session.getAttribute(ERROR);%下面是连接数据库的一部分的代码:import java.sql.*;public class dbconn String sDBDriver=sun.jdbc.odbc.JbdcodbcDriver; String sConnStr=jsbc:odbc:reg; Connection conn=null; ResultSet rs=null; public dbconn() try Class.forName(sDBriver); catch(java.lang.ClassNotFoundException e) System.err.println( class dbconnect not found! + e.getMessage(); public ResultSet esecuteQuery(String sql) rs=null; try conn=DrivetrrManager.getConnection(sConnStr); Statement stmt=conn.createStatement(); rs=stmt.executeQuery(sql); catch(SQLException ex) System.out.println(ex.getMessage(); return rs; public ResultSet executeUpdate(String sql)

温馨提示

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

评论

0/150

提交评论