信电学院CDIO试点班项目实践的报告--煤气管理系统数据库.doc

信电学院CDIO试点班项目实践的报告--煤气管理系统数据库.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信电学院CDIO试点班项目实践的报告--煤气管理系统数据库

信息与电气工程学院 CDIO项目报告 (2016/2017学年第一学期) 课程名称 : 数据库原理及应用 项目名称 : 煤气公司送气管理系统 专业班级 : 学生姓名 : 学 号: 项目成绩 : 2016年12月14日 目 录 1 项目背景及需求分析 2 1.1项目背景 2 1.2需求分析 2 2 概念结构设计 2 2.1抽象出系统实体 2 2.2局部E-R图 2 2.3全局E-R图 4 3 逻辑结构设计 4 3.1初始关系模式设计 4 3.2关系模式的规范化 5 4 创建数据库及相关操作 5 4.1 创建数据库 5 4.2建立视图 6 4.3建立存储过程 8 4.4建立触发器 8 4.5查询问题及查询结果 9 5备份和恢复的维护、安全的设置 12 6 项目设计心得总结 12 参考文献 13 评分表 14 1 项目背景及需求分析 1.1项目背景 某煤气公司为收集和管理数据简便,将工作数据导入数据库。使其实现工作人员、客户人员的管理;实现煤气类别和供应商的管理;实现煤气入库管理和出库管理;实现费用管理。 1.2需求分析 创建触发器,实现入库、出库时相应类型煤气的数量的增加或减少。 创建存储过程统计每个送气员工指定月份送气的数量。 创建存储过程查询指定月份用气量最大的前10个用户,并按用气量递减排列。 建立数据库相关表之间的参照完整性约束;建立表间关系。 2 概念结构设计 2.1抽象出系统实体 一个company可以雇佣多名worker,一名worker工作在一个company工作。 一名worker可以服务多名customer,一名customer可有由多名worker服务。 一名customer可以使用多种gas,一种gas可以 供多名customers使用。 一个供应商可以提供多种gas,一种gas可以有多个供应商提供。 一个company可以拥有多种gas,一种gas属于一个公司。 2.2局部E-R图 图2.2.1 局部E-R图之company 图2.2.2 局部E-R图之gas 图2.2.3 局部E-R图之worker 图2.2.4 局部E-R图之customer 图2.2.5 局部E-R图之supply 2.3全局E-R图 图2.3.1 全局E-R图 3 逻辑结构设计 3.1初始关系模式设计 Company(公司编号,公司名称) Worker(工号,职工姓名,职工性别) Customer(顾客编号,顾客姓名,顾客性别) Gas(煤气编号,煤气名称,存储量) Supply(供应商编号,供应商名称) Goin(入库序号,入库日期,入库量,煤气编号,供应商编号) Goout(出库序号,出库日期,出库量,煤气编号,客户编号) Servers(服务序号,费用,服务日期,工号,客户编号) 其中有下滑直线标记的为主码,下滑波浪线标记的为外码。 3.2关系模式的规范化 Company、Worker、Customer、Gas、Supply、Goin、Goout、Servers符合第一范式,即这些关系模式的所有属性都是不可再分的基本数据项。 Company、Worker、Customer、Gas、Supply、Goin、Goout、Servers符合第二范式,即这些关系模式的每个非主属性完全函数依赖于这些关系模式中的某个候选码。 Company、Worker、Customer、Gas、Supply、Goin、Goout、Servers符合第三范式,即每个非主属性都不传递函数依赖于任何候选码。 4 创建数据库及相关操作 4.1 创建数据库 Company表的建立: 代码: CREATE TABLE `company` ( `cno` tinyint NULL , `cname` tinyint NULL , PRIMARY KEY (`cno`) ) 结果展示:如图4.1.1 图4.1.1 company表 customer表的建立: 代码: CREATE TABLE `customer` ( `客户编号` tinyint NULL , `客户姓名` varchar(255) NULL , `客户性别` enum(女,男) NULL , PRIMARY KEY (`客户编号`) ) ; 结果展示:如图4.1.2 图4.1.2 customer表 gas表的建立: 代码: CREATE TABLE `gas` ( `煤气编号` tinyint NULL , `煤气名称` varchar(255) NULL , `存储量` float NULL , `所属公司` t

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档