免费预览已结束,剩余10页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录1 设计时间22 设计目的23设计任务24 设计内容24.1需求分析24.2系统设计34.3系统实施84.4运行与测试125 总结与展望13参考文献14成绩评定141 设计时间第17周(2012年6月4日2012年6月8日)2 设计目的数据库原理及应用课程设计是软件工程专业集中实践性环节之一,是学习完数据库原理及应用及SQL SERVER数据库课程后进行的一次全面的综合练习。其目的在于加深对数据库基础理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。同时,此次设计对于同学将来的毕业设计和具体工作实践将有重要的意义。3设计任务课程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告。严格实施课程设计这一环节,对于学生基本程序设计素养的培养和软件工作者工作作风的训练,将起到显著的促进作用。4 设计内容 4.1需求分析 (1)数据登记把各种手填单据中的数据及时登记到系统中、并要求能进行修改。这些单据包括修车登记单、汽车修理单、零件入库单、零件出库单。(2)查询能查询登记单、修理单、汽车、车主、修理公、零件库存的有关数据。(3)编制并显示零件订货计划月报表。(4)发票发票中包括顾客姓名、汽车牌号、修理项目、修车费(=修理费+零件费)。零件费=(零件价格耗用数量)修理费=小时工资修理小时3(5)统计修理工工资月报表某修理工的月工资=(小时工资)修理小时4.2系统设计4.2.1 概念结构设计E-R图是分为两部分实体和属性,每个实体可以有多个属性,这些属性用来表示实体的性质。不同实体之间可以用关系进行连接,表明各个实体之间的内在联系。实体和实体之间的关系有一对一的关系(1:1),一对多的关系(1:N)和多对多的关系(N:M)。分E-R图及各个实体之间的关系如下图所示。电话姓名车牌编号客户车型图4.1编号客户编号修理项目登记单登记时间图4.2修理单修理工使用数量修理耗时修理项目所用零件编号客户号图4.3姓名编号修理工小时工资电话图4.4零件单价库存量最低库存量编号名称图4.5实体间的关系:客户登记登记单 1 1 下单 1 1修理工零件登记登记修理单 N 1 1 N图4.64.2.2 逻辑结构设计数据库逻辑设计的任务是将概念结构转换成特定DBMS所支持的数据模型的过程。从此开始便进入了“实现设计”阶段,需要考虑到具体的DBMS的性能、具体的数据模型特点。从E-R图所表示的概念模型可以转换成任何一种具体的DBMS所支持的数据模型,如网状模型、层次模型和关系模型。这里只讨论关系数据库的逻辑设计问题,所以只介绍E-R图如何向关系模型进行转换。关系模型的逻辑结构是一组关系模式的集合。E-R图则是由实体,实体的属性和实体间的联系三个要素组成。所以将E-R图转换为关系模型实际上就是要将实体,实体的属性和实体间的联系转换为关系模式。转换原则如下。1. 实体类型的转换:一个实体型转换成一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。2联系类型的转换,根据不同的情况做不同的处理。(1)一个1:1的联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。(2)一个:N的联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。(3)一个M:N联系转换为一个关系模式。与该联系相连的各实体的码为各实体码的组合。(4)三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实休的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。(5)具有相同码的关系模式可合并。3. 根据学生宿舍管理系统的E-R图转换为关系模型如下。将每一个实体转换成一个关系(关系就是给出关系名,属性就是实体属性,并标明该关系的主键用下划线来表示)根据E-R图转换为关系模式,关系的码用下横线标出:客户(编号,姓名,电话,车牌,车型);登记单(编号,客户编号,登记时间,修理项目);修理单(编号,客户号,修理项目,修理工,修理耗时,所用零件,使用数量);修理工(编号,姓名,电话,小时工资);零件(编号,名称,库存量,最低库存量,单价);4.2.3 物理结构设计基本表的建立:客户表:字段名称类型(长度)取值范围是否为空主关键字备注编号VARCHAR(20)NY客户编号姓名VARCHAR(20)NN客户姓名电话VARCHAR(20)NN联系电话车牌VARCHAR(20)NN车牌号车型VARCHAR(20)NN车辆型号表 4.1登记单表:字段名称类型(长度)取值范围是否为空主关键字备注编号VARCHAR(20)NY登记单序列号客户编号VARCHAR(20)NN客户姓名编号登记时间DATETIMENN客户登记时间修理项目VARCHAR(20)NN修理项目表4.2修理单表:字段名称类型(长度)取值范围是否为空主关键字备注编号VARCHAR(20)NY修理单编号客户号VARCHAR(20)NN客户姓名修理项目VARCHAR(20)NN修理项目修理工VARCHAR(20)NN修理工编号修理耗时SMALLINT大于0NN修理所用时间所用零件VARCHAR(20)NN所使用零件名称使用数量SMALLINT大于0NN使用零件数量表 4.3修理工表:字段名称类型(长度)取值范围是否为空主关键字备注编号VARCHAR(20)NY修理工编号姓名VARCHAR(20)NN修理工姓名电话VARCHAR(20)NN修理工联系方式小时工资SMALLINTNN每小时工作表 4.4零件表:字段名称类型(长度)取值范围是否为空主关键字备注编号VARCHAR(20)NY零件编号名称VARCHAR(20)NN零件名称库存量SMALLINTNN零件库存量最低库存量SMALLINTNN仓库中最低库存单价SMALLINTNN该种零件单价表4.54.3系统实施4.3.1数据库实现1、创建汽修管理数据库:CREATE DATABASE 汽修管理2、建立客户表:CREATE TABLE 客户(编号 VARCHAR (20),姓名 VARCHAR (20),电话 VARCHAR (20),车牌 VARCHAR (20),车型 VARCHAR (20),PRIMARY KEY (编号),)建立登记单表:CREATE TABLE 登记单(编号 VARCHAR (20),客户编号 VARCHAR (20),登记时间 DATETIME,修理项目 VARCHAR (20),PRIMARY KEY (编号),FOREIGN KEY (客户编号) REFERENCES 客户(编号),)建立修理表:CREATE TABLE 修理单(编号 VARCHAR (20),客户号 VARCHAR (20),修理项目 VARCHAR (20),修理工 VARCHAR (20),修理耗时 SMALLINT,所用零件 VARCHAR (20),使用数量 SMALLINT,PRIMARY KEY (编号),FOREIGN KEY (客户号) REFERENCES 客户(编号),FOREIGN KEY (修理工) REFERENCES 修理工(编号),FOREIGN KEY (所用零件) REFERENCES 零件(编号),)建立修理工表:CREATE TABLE 修理工(编号 VARCHAR (20),姓名 VARCHAR (20),电话 VARCHAR (20),小时工资 SMALLINT,PRIMARY KEY (编号),)建立零件表:CREATE TABLE 零件(编号 VARCHAR (20),名称 VARCHAR (20),库存量 SMALLINT,最低库存量 SMALLINT,单价 SMALLINT,PRIMARY KEY (编号),)3、基本试图的建立:建立发票视图:CREATE VIEW 发票(客户姓名,车牌号,修理项目,费用)ASSELECT 客户.姓名,客户.车牌,修理单.修理项目, (修理工.小时工资*修理单.修理耗时)*3+(修理单.使用数量*零件.单价)FROM 客户,修理工,修理单,零件WHERE 客户.编号=修理单.客户号 AND 修理单.修理工=修理工.编号 AND 修理单.所用零件=零件.编号建立工作时间视图:CREATE VIEW 工作时间(修理工号,工作时间)ASSELECT DISTINCT 修理工,SUM(修理单.修理耗时)FROM 修理单GROUP BY 修理工建立工资视图:CREATE VIEW 工资(修理工,工资)ASSELECT DISTINCT 修理工.姓名,修理工.小时工资*工作时间.工作时间FROM 修理工,工作时间WHERE 修理工.编号=工作时间.修理工号建立零件出库视图:CREATE VIEW 零件出库(零件名,数量)ASSELECT DISTINCT 所用零件,SUM(使用数量)FROM 修理单GROUP BY 所用零件建立订货计划视图:CREATE VIEW 订货计划(零件名,数量)ASSELECT DISTINCT 零件.名称,零件.最低库存量-(零件.库存量-零件出库.数量)FROM 零件,零件出库WHERE 零件.编号=零件出库.零件名4.3.2 数据载入客户表: 修理单:零件:修理工:4.4运行与测试4.4.1运行与测试打印客户发票:打印员工工资:打印零件订货计划:(结果为正无需进货,结果为负为需进货数量)4.4.2分析设计数据库时,需要考虑相关功能的实现如,客户发票的打印和结算,员工工资的结算等等,因为只设计数据库,没有相关的前台程序,实现起来有点复杂,所以通过建立视图去实现相应的结算功能,这样也能保证相关数据的安全性。5 总结与展望通过开发研究这个汽车维修系统,进一步明确了开发一个信息系统开发的方法、方式以及思路,加深了我对管理系统的认识,巩固了以前所学的有关信息管理系统的开发知识和计算机软件知识,特别是对具体系统开发的步骤与方法有了更深层次的认识,提高了数据库开发的水平,同时也为我今后进一步学习,运用计算机有关知识打下了坚实的基础。因时间紧张,水平有限,一些数据表显得不够精炼,冗余代码较多,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026天津医科大学朱宪彝纪念医院第三批招聘1人考试参考题库带答案解析
- 燃气设备安全管理与检测方案
- 机电管线与结构深化设计对接方案
- 2025陕西煤业化工实业集团有限公司招聘10人考试历年真题汇编附答案解析
- 2025年智航(云南)信息产业有限公司四季度员工招聘(5人)备考题库附答案解析
- 老年人居家护理
- 钢结构现场施工质量管理方案
- 2025年思政时政热点话题题库及答案
- 通信基站基础知识
- 农田气象监测与数据应用方案
- 消防设施中断管理操作规范
- 2022北京首都师大附中高一12月月考化学试卷含答案解析
- 机房基本运维知识培训课件
- 道路建筑材料知识培训内容课件
- 事业单位保密知识培训课件
- 房土两税课件
- 全国大学生职业规划大赛《工业互联网技术》专业生涯发展展示【高职(专科)】
- 中国石油安全培训教学课件
- 三轮车驾驶证d证理论考试试题及答案
- 2025年安徽省就业援藏面向山南籍高校毕业生专项公开招聘事业单位38名备考考试题库附答案解析
- 2025年保安员证考试题库(附答案+解析)
评论
0/150
提交评论