数据库系统及应用复习——第七章数据库设计

重点:概念设计中ER模型的设计方法,逻辑设计中ER模型向关系模型的转换方法,数据库设计的阶段组成,每个阶段的主要任务。

一、数据库设计概述

数据库应用系统的开发也是一项软件工程,称为数据库工程,数据库应用系统也有生存期的概念,通常包括六个阶段:

(1)需求分析阶段

   任务:

  • 做全面的详细的调查,收集支持系统总的设计目标的数据与要求
  • 确定用户需求
  • 开考虑可能变动,使之符合未来发展方向

或者:

  • 了解系统工作概况
  • 明确用户需求
  • 确定新功能

阶段:

  • 需求信息的收集
  • 分析整理
  • 评审

(2)概念设计阶段:ER图与数据字典

数据字典:是对系统中数据的详尽描述,它提供对数据库数据描述的集中管理。

它包含以下几个部分:数据项(最小)、数据结构(大)、数据流(更大)、数据存储和加工过程(最大)。

概念设计模型:

任务:得到一个与DBMS无关的概念模式

现实世界到机器世界的一个过渡的中间层次(第一次抽象)(现实事物-》(认识并抽象)信息世界的概念模型)

(信息世界)概念模型-》(机器世界)数据模型(第二次抽象)

设计步骤:

  • 进行数据抽象(聚集与概括),设计局部概念模式
  • 局部概念-》全局概念
  • 评审

基本ER模型的扩展

ER(实体联系)模型是对现实世界的一种抽象

  • 依赖联系
  • 子类

冲突:属性冲突,命名冲突,结构冲突

ER的分割:合并增删

实体类型的分裂包括垂直分割(键必须在分裂后的每个实体类型中出现)、水平分割。

联系类型合并时,所合并的联系类型必须是定义相同的实体类型中。

采用ER方法的数据库概念设计步骤:

  • 设计局部ER模式
  • 把各局部ER模式综合成全局ER模式
  • 对全局ER模式进行优化

(3)逻辑设计阶段

任务:把概念设计阶段设计好的基本ER图转换为与选用的具体机器上的DBMS所支持的数据模式相符合的逻辑结构(包括数据库模式和外模式)。

(4)物理设计阶段 :

        数据库中常用的四种文件组织方式是:顺序文件、索引文件、倒排文件、散列文件 。

        数据库的物理设计主要考虑三方面的问题:物理存储结构、分配存储空间、实现存取路径。

(5)实现阶段

(6)运行维护阶段

例题(题解过程看复习笔记)

1)工厂(包括厂名和厂长名)需建立一个管理数据库存储以下信息: 一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话; 一个车间又多个工人,每个工人哟职工号、姓名、年龄、性别和工种; 一个车间生产多种产品,产品有产品号和价格; 一个车间生产多种零件,一个零件也可能为多个车间制造。零件由零件号、重量和价格; 一个产品由多种零件组成,一种零件也可装配出多种产品; 产品与零件均存入仓库中; 厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。

2)某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。产品有产品号和产品名两个属性,零件有零件号和零件名两个属性,原材料有材料编号和材料名两个属性,仓库有仓库编号和仓库名两个属性,生成和存储过程均记录当前时间。

(1)试用E-R图画出此工程产品,零件,材料,仓库的概念模型。

(2)将E-R图转换成关系模式,并指出每个表的主键和外键,主键用下划线标记,外键用波浪线标记。  

(3)写出创建仓库表与零件表的标准SQL语句,要求具有完整的约束关系,表名和字段名用汉字描述。

3)某企业集团下属工厂中,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。根据上述语义画出E-R图。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
一、课程设计的目的 掌握数据库的基础知识、基本理论、原理和实现技术。 二、设计题目:工厂数据库管理系统 已知技术参数和设计要求: 需求说明及要求 题目:工厂数据库管理系统 某工厂建立一个管理数据库存储以下信息: 1. 工厂包括厂名厂长。 2. 一个厂内多个车间,每个车间有车间号、车间主任姓、地址和电话。 3. 一个车间有多个工人,每个工人有职工号、姓、年龄、性别和工种。 4. 一个车间生产多种产品,产品有产品号、产品称和价格。 5. 一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量和价格 。 6. 一个产品由多种零件组成,一种零件也可装配出多种产品。 7. 产品与零件均存入仓库中。 8. 厂内多个仓库,仓库有仓库号、仓库主任姓和电话。 各阶段具体要求: 1、需求分析阶段 定义数据项的含义和取值 定义目标系统的数据流 2、概念结构设计阶段 画出实体模型E-R图 3、逻辑结构设计阶段 将实体模型转化为关系模型 给出每个关系的主关键字和函数依赖集 分析你所设计的关系数据库模式是否属于3NF 4、物理设计阶段 确定所有字段的称、类型、宽度、小数位数及完整性约束 确定数据库及表的称及其组成 确定索引文件和索引关键字 5、数据库安全及维护设计阶段 设计一个适合的数据库安全策略(用户身份认证、访问权限、视图) 为了实现复杂的数据完整性约束,设计适当的触发器 设计一个适合的数据库备份策略 6、实施阶段 要求所有操作必须在查询分析器中用SQL语句或系统存储过程完成。 三、设计内容 1将概念模型转化为关系模型 从E- R图中可以看到有6个实体,所以我建立了6个实体关系表,并且把实体键作为表的关键字 ,4个一对多的联系表,在建立关系模型的过程中,我是把一这边的实体键放到多这边做 为外键,4个多对多的联系,所以我建立了4个联系表,并把相互联系的两实体的实体键 ,分别作为联系表的外键。在处理仓库与零件多对多的联系和仓库与产品多对多的联系 过程中有以下两种方法: 1. 建立两个存储表,仓库零件存储表和仓库产品存储表,并把仓库号,零件号和仓库号 ,产品号分别作为这两个联系表的外键,这样就保持了参照完整性的约束条件,而 且建立两个联系表清晰明了,更容易使人明白。 2. 建立一个存储表,仓库物品存储表,它包含仓库号,物品号(零件号和产品号),库 存量3个属性,建立一个存储表更简洁,但是在建表的过程中丢失的参照完整性。 综合考虑以上两种方法,我觉得第(1)中更好。 四、设计步骤 4.1需求分析阶段 (1)定义数据项的含义和取值 "数据项 "含义 " 类型 " 宽度 " 小数位数 " "FacName "工厂 "Char " 10 " " "FacMName "厂长 " Char " 8 " " "CNo "车间主任编号 " Char " 8 " " "WorkNo "车间号 "Char " 4 " " "WorkAddress"车间地址 " Char " 12 " " "Workphone "车间电话 " Char " 5 " " "WorkerNo "职工号 " Char " 5 " " "WorkerName "职工 " Char " 8 " " "WoerkerAge "职工年龄 " Int " 4 " " "WorkerSex "性别 " Char " 2 " " "WorkerType "工种 " Char " 10 " " "ProductNo "产品号 " Char " 5 " " "ProductName"产品称 " Char " 12 " " "ProductPric"产品价格 " Numeric " 5 " 1 " "e " " " " " "ComNo "零件号 " Char " 5 " " "ComWeight "零件重量 " Int " 4 " " "Comprice "零件价格 " Numeric " 5 "1 " "WareNo "仓库号 " Char " 5 " " "WNo "仓库主任编号 " Char " 8 " " "Warephone "仓库电话 " Char " 12 " " (2)定义数据结构 "数据结构 "含义 "组成 " " " " " "工厂 "工厂情况表 "FacName+FacMName " " " "WorkName+CNo+ " "车间 "车间情况表 "WorkNo+WorkAddress+ " " " "Workphone+FacName " " " "WorkerNo+WorkerName+WorkerSex+ " "职工 "职工情况表 "WorkerType+WorkerAge+WorkNo " " " " ProductNo+ProductNa
管理系统中计算机应用 主讲老师—贾鹏 管理系统中计算机应用 精讲8 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第1页。 复习方法: 1. 题库、随堂考、作业题目。 2. 上课课件。 3.词解释、简答、论述汇总。 4. 历年真题(选择5套弄懂即可)。 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第2页。 管理系统中计算应用 第一章 管理系统与信息技术应用 第二章 应用信息系统 第三章 管理系统的信息化平台 第四章 数据库系统 第五章 信息系统的建设规则 第六章 系统分析 第七章 系统设计 第八章 系统实施 第九章 系统运行管理与维护 第十章 实际应用举例 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第3页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第4页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第5页。 系统设计阶段的主要活动如下:【选】 第七章 系统设计 分类 内容 系统总设计 软件系统总体结构设计数据库设计,通信网络平台设计。 系统详细设计 其中包括代码设计,输入输出界面设计,处理过程设计。 编写系统设计报告 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第6页。 系统设计阶段的主要活动如下:【选】 第七章 系统设计 分类 内容 _________ 软件系统总体结构设计数据库设计,通信网络平台设计。 _________ 其中包括代码设计,输入输出界面设计,处理过程设计。 _________ 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第7页。 系统设计阶段的主要活动如下:【选】 第七章 系统设计 分类 内容 系统总设计 软件系统总体结构设计数据库设计,通信网络平台设计。 系统详细设计 其中包括代码设计,输入输出界面设计,处理过程设计。 编写系统设计报告 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第8页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第9页。 7.1系统结构设计 一、总体结构设计的任务 根据系统分析的逻辑模型设计应用软件系统的物理结构。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第10页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第11页。 7.1系统结构设计 二、结构化设计的基本思想【选】 模块化、结构化、自顶向下逐步求精,构成了结构化设计方法的核心内容。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第12页。 7.1系统结构设计 二、结构化设计的基本思想【选】 _____化、_____化、_____逐步求精,构成了结构化设计方法的核心内容。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第13页。 7.1系统结构设计 二、结构化设计的基本思想【选】 模块化、结构化、自顶向下逐步求精,构成了结构化设计方法的核心内容。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第14页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第15页。 7.1系统结构设计 二、结构化设计的基本思想 1.程序的结构化设计【选】 率性、随意 一致性、可读性和可维护性 该方法包括三种基本的程序结构:顺序结构、选择结构和循环结构。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第16页。 7.1系统结构设计 二、结构化设计的基本思想 2.模块的结构化设计【选】 模块间的关系必须要阐明 模块间也有三种不同的结构形式:顺序结构、选择结构和循环结构。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第17页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第18页。 7.1系统结构设计 二、结构化设计的基本思想 3.控制结构图【选】 控制结构图也称为软件结构图或模块结构图 表示系统的层次分解关系、模块调用关系、模块之间数据流和控制信息流的传递关系。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第19页。 第七章 系统设计 管理系统中计算机应用-第七章-系统设计全文共110页,当前为第20页。 7.1系统结构设计 二、结构化设计的基本思想 3.控制结构图——控制结构的基本符号和规定【选】 第七章 系统设计 图形符号 说明 图形符号 说明 表示模块 数据存储 表示模块调用关系,箭尾连接上层模块,箭头指向被调用
课程介绍 学分:4分 学时:24(课堂讲授)+40(上机实践) 考核方法: 期末考试70%+平时成绩30% 期末考试: 闭卷机考 平时成绩: 考勤10%、作业(纸制作业13次、课堂练习3—5次、课堂测试8——10次、实验12—15次)50%、综合设计(项目答辩)40% 这是一门专业必修课,也是核心课程;理论实践性都很强;大家可以学得很好,对将来的工作非常有用。 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第1页。 上课内容 主要内容: 数据库理论知识 数据库系统概述、数据模型、关系模型、数据库设计 关系数据库标准语言SQL ACCESS数据库对象及操作 数据库、表、查询、窗体、报表、宏、模块 VBA编程基础 小型应用系统开发 教材: 《ACCESS2010数据库基础教程》 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第2页。 对大家的希望 上课:希望每次课都能到,每节课内容都听完整。 课堂:认真听课,积极思考,踊跃提问,注意课堂纪律,不要影响别人。 作业:先复习再做作业,认真独立完成;及时交作业。 实验:一定要先自学或复习相关课程,先认真阅读实验指导,再进行实验;实验时不要喧哗走动以免影响他人。 反馈:及时反馈教学效果,以便提高教学质量 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第3页。 寄语与期待 寄语:大学的魅力,在于其独立之精神,自由之思想。在这里 你们要学会独立:生活独立、思想独立、人格独立; 你们要学会自主:自主学习、自主生活、自主管理; 你们还要学会选择:选择课程、选择专业、选择朋友; 你们更要学会规划:规划学业、规划职业、规划人生。 期待: 我不希望仅仅是你们的数据库老师,更期待在教授的过程中能辅佐你们的精神真正独立、思想真正自由。 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第4页。 ACCESS2010数据库基础教程 第一章 数据库系统概述 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第5页。 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第6页。 数据库主要研究如何对数据进行科学的管理,以提供可靠的、可共享的、安全的、有意义的数据。 数据库技术一般包含数据管理和数据处理两部分。 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第7页。 1.1 常见概念 1.1.1 数据与信息 数据(Data)是用于记录事物情况的物理符号。 数据的表示形式是多样的: 数值型数据:参与数值运算 字符型数据:不能参与数值运算 多媒体数据:图像、声音等 信息(Information)是指经过加工处理过后的数据。 数据与信息的联系与区别 数据是具体的,信息是抽象的。数据是表示信息的具体形式,信息是数据表达的内容。 同样的信息可以通过不同的数据形式表示。 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第8页。 1.1.2 数据处理 数据处理是指将数据加工并转换成信息的过程,包括对数据的收集、存储、分类、计算、加工、检索和传输等一系列活动。 数据 信息 数据处理 ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第9页。 1.1.3 数据库 数据库(DataBase,简记为DB)是按照一定的组织结构存储存储介质上相互关联的数据集合,用来满足信息需求。 比如:成绩数据库、户口数据库 特点:永久地存储,有组织的存放,并且可以共享 以文件方式存储,如常见数据库文件扩展: MDB-Access2003;ACCDB-Access2010;MDF-SQL Server;DBC-VFP(Visual FoxPro) ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第10页。 1.1.4 数据库管理系统 数据库管理系统 DataBase Management System, DBMS 数据库系统的核心 是一个软件,它方便用户操作,可以按用户的要求来定义数据、管理数据和操纵数据,提供数据安全性和完整性控制机制。 建立在OS的基础之上,位于OS与用户之间的数据管理软件,负责对数据库进行统一管理和控制 如: ACCESS,SQL SERVER, ORACLE,…… DB DBMS ACCESS2010数据库基础教程-01第一章数据库系统概述全文共24页,当前为第11页。 1.1.4 数据库管理系统 数据库管理系统DBMS主要功能 数据定义 数据操纵 数据库的运行控制、管理功能 数据组织、存储管理 数据库的保护 数据
酒店管理系统是一个常见的数据库课程设计项目,它涉及到数据库设计、数据模型、触发器、前后端连接等多个方面。以下一个简单的介绍: 1. 数据库设计:酒店管理系统的数据库设计是整个项目的基础。它包括定义表、字段、主键、外键等。可以使用E-R图来表示实体和关系,以及流程图和模块图来表示系统的功能和模块。 2. 触发器:触发器是数据库中的一种特殊对象,它可以在特定的数据库操作(如插入、更新、删除)发生时自动执行一些操作。在酒店管理系统中,可以使用触发器来实现一些业务逻辑,例如在预订房间时自动更新房间的状态。 3. Python编程:在酒店管理系统中,可以使用Python编程语言来实现一些功能,例如与数据库的交互、数据处理、界面设计等。同时,还可以使用一些第三方库来简化开发过程,例如Django、Flask等。 4. 前后端连接:酒店管理系统通常包括一个前端界面和一个后端数据库。前端界面用于用户交互和数据展示,后端数据库用于存储管理数据。可以使用Python的Web框架(如Django)来实现前后端的连接,通过HTTP请求和数据库交互来实现数据的增删改查。 总结起来,酒店管理系统是一个综合性的数据库课程设计项目,涉及到数据库设计、触发器、Python编程和前后端连接等多个方面。通过这个项目,你可以学到数据库设计的基本原理和方法,以及如何使用Python来实现一个完整的应用系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值