【数据库系统概论】第7章-数据库设计

文章目录

    • 7.1 数据库设计概述
    • 7.2 需求分析
      • 7.2.1 需求分析的任务
      • 7.2.2 需求分析的难点
      • 7.2.2 需求分析的方法
      • 7.2.3 数据字典
    • 7.3 概念结构设计
      • 7.3.1 概念模型
      • 7.3.2 E-R模型
      • 7.3.3 概念结构设计
    • 7.4 逻辑结构设计
      • 7.4.1 E-R图向关系模型的转换
      • 7.4.2 数据模型的优化
      • 7.4.3 设计用户子模式
      • 小结
    • 7.5 物理结构设计
      • 7.5.3 确定数据库存储结构
      • 7.5.4 评价物理结构
    • 7.6 数据库的运行和维护
    • 小结

7.1 数据库设计概述

  1. 定义
    在这里插入图片描述
  2. 数据库设计的特点
    (1) 三分技术、七分管理、十二分基础数据
    (2)结构(数据)设计和行为(处理)设计密切结合
    在这里插入图片描述
  3. 数据库设计的六个步骤
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  4. 数据库设计中的各级模式
    在这里插入图片描述

7.2 需求分析

在这里插入图片描述

7.2.1 需求分析的任务

在这里插入图片描述

7.2.2 需求分析的难点

在这里插入图片描述

7.2.2 需求分析的方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 数据流图

在这里插入图片描述

7.2.3 数据字典

在这里插入图片描述
在这里插入图片描述

7.3 概念结构设计

  1. 定义
    在这里插入图片描述
    在这里插入图片描述

7.3.1 概念模型

在这里插入图片描述

7.3.2 E-R模型

在这里插入图片描述

  1. E-R模型三要素
    实体、属性、联系。(另外,别忘了实体间的映射关系,如下)
  2. 实体间的联系
    在这里插入图片描述
    (1)在这里插入图片描述
    (2)在这里插入图片描述
    (3)在这里插入图片描述
    在这里插入图片描述
  3. E-R图画法
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 练习
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

7.3.3 概念结构设计

现在自己动手设计E-R图,没给你明确属性了。

  1. 设计方法
    需求分析:自顶向下
    概念结构设计:自底向上
    在这里插入图片描述
    在这里插入图片描述
  2. 实体与属性的划分原则
    在这里插入图片描述
    在这里插入图片描述
  3. 设计分E-R图
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  4. E-R图的集成
    在这里插入图片描述
    5.
    在这里插入图片描述
  5. 冲突
    (1)属性冲突
    在这里插入图片描述
    (2)命名冲突
    在这里插入图片描述
    (3)结构冲突
    在这里插入图片描述
  6. 修改和重构
    在这里插入图片描述
    在这里插入图片描述
  7. 冗余
    在这里插入图片描述
    (1)消除冗余的方法
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    触发器的作用体现了:保证数据一致
    在这里插入图片描述
  8. 验证整体概念结构
    在这里插入图片描述
    在这里插入图片描述
  9. 概念结构设计小结
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

7.4 逻辑结构设计

在这里插入图片描述
在这里插入图片描述

  1. 不需要,概念结构设计是现实世界到信息世界的抽象,不涉及具体的实现。
  2. 需要。逻辑结构设计属于信息世界到机器世界的转换,涉及到具体的实现。
  3. 任务:
    把概念设计阶段设计好的基本E-R图转换为与选用数据库管理系统产品所支持的数据模型相符合的逻辑结构。
  4. 步骤
    在这里插入图片描述
    一般的、特定的、优化的

7.4.1 E-R图向关系模型的转换

  1. 转换什么?
    实体、属性、实体间的联系
  2. 要解决的问题
    在这里插入图片描述
  3. 转换的原则(解决问题1)
    一个实体型转换为一个关系模式,关系的属性就是实体的属性,关系的码就是实体的
    在这里插入图片描述
  4. 实体之间联系的转换?(解决问题2)
    (1)1:1
    在这里插入图片描述
    (2)1:n
    向n端合并,或者新增一个关系模式
    在这里插入图片描述
    或者新增:员工部门(员工,部门)
    (3)m : n
    新增一个表,用双方主码+联系产生的属性
    在这里插入图片描述
    (4)m:n:p
    在这里插入图片描述
    在这里插入图片描述
    (5)具有相同码的关系模式可以合并

在这里插入图片描述

7.4.2 数据模型的优化

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  1. 水平分解
    按关系的水平方向分解,即按元组分解。
    在这里插入图片描述
  2. 垂直分解
    在这里插入图片描述
  3. tips

在这里插入图片描述

7.4.3 设计用户子模式

创建视图了,外模式;逻辑结构设计的第二个模式。

  • 定义
    1
  • 授权
    在这里插入图片描述

小结

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.5 物理结构设计

  1. 定义
    在这里插入图片描述
  2. 设计步骤
    在这里插入图片描述
    确定结构,评估效率。
  3. 下面是PPT环节
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    1
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 存取方法总结
    索引、聚簇、HASH
    在这里插入图片描述

7.5.3 确定数据库存储结构

在这里插入图片描述

7.5.4 评价物理结构

在这里插入图片描述

7.6 数据库的运行和维护

在这里插入图片描述
在这里插入图片描述

小结

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/586256.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【教程】标注工具Labelimg的安装与使用

图片标注主要是为了建立自己的数据集,便于进行更深度的学习训练。本篇文章将对一款十分好用的图片标注工具labelimg进行介绍,重点介绍其安装以及使用的过程。 - 什么是labelimg labelimg 是一个可视化的图像标定工具。它是用Python编写的,并…

HDFS客户端UnknownHostException事故解析

文章目录 前言事故现场问题分析是否是整个域名解析服务当时都出问题了是否是出问题的pods本身的域名解析有问题 异常发生的全部过程域名的解析是什么时候发生的,怎么发生的域名解析的详细流程 重试发生在什么地方为什么重试会无效 Bugfix代码详解关于StandardHostRe…

特殊权限(suid sticky acl mask)

1.suid 1. 普通用户可不可以修改密码? 答:是可以的,可以修改自己的密码 2. /etc/shadow 文件的作用是什么? 答:存储用户密码的文件 3. 普通用户是否可以修改/etc/shadow 文件? 答:不可以&…

STM32+Codesys工业软件PLC解决方案

工业控制系统在现代制造和自动化领域扮演着关键角色, 基于IEC 61131-3 标准的控制器编程开发软件平台CODESYS,适用于多种行业的控制系统的开发,使用户方便快捷地对自动化工程进行编程和配置,完成项目开发、软件测试和应用调试。 本次STM32联合合作伙伴C…

Docker logs 命令——查看docker容器日志

请直接看原文: 原文链接:Docker logs 命令——查看docker容器日志-CSDN博客 --------------------------------------------------------------------------------------------------------------------------------- 用法: docker logs [OPTIONS] CONTAINER …

2023年全国职业院校技能大赛网络系统管理网络模块 网络构建答题卡(600)(还原截图锐捷)

网络构建答题卡(600) 要求:使用下面指令查看其运行状态,并使用FSCapture截图软件进行截图,将输入结果的截图插入到文档中。 职业素养(25) 截图文档整洁规范,根据题目要求进行截图。 整理赛位,工具、设备归位,保持赛后整洁有序。 遵守赛项记录,听从裁判安排。 基础…

FC UxROM (Mapper 2) 操作

UxROM 概览 mapper号2卡带名UxROMPRG ROM容量256K / 4096KPRG ROM窗口16K 16K fixedPRG RAM容量无PRG RAM窗口无CHR ROM容量无CHR ROM窗口n/a扩展声音无IRQ无 寄存器 Bank 选择 ( 8000 − 8000- 8000−FFFE) 7 bit 0 ---- ---- xxxx pPPP||||- 为 CPU $8000-$BFFF 选择…

服务器运行状况监控工具

服务器运行状况监视提供了每个服务器状态和性能的广泛概述,通过监控服务器指标,如 CPU 使用率、内存消耗、I/O、磁盘使用率、进程等,服务器运行状况监控可以避免服务器停机。 服务器性能监控指标 服务器是网络中最重要的组件之一&#xff0…

计算机网络复习6

应用层 文章目录 应用层网络应用模型域名系统DNS文件传输协议FTP电子邮件万维网 网络应用模型 客户/服务器模型 客户/服务器(Client/Server,C/S)模型中,有一个总是打开的主机称为服务器,它服务于许多来自其他称为客户机的主机请求…

Python线程池实现的进阶知识

1.参数 max_workers 的设定 接前文 《Python多线程和线程池的下载实战用法 》中案例,继续分析 concurrent.futures.ThreadPoolExecutor() 是 Python 中的一个线程池实现,用于执行并发的任务。它可以通过参数 max_workers 来设置线程池的最大工作线程数。 在你提供的代码中,…

SLAM学习入门--编程语言

文章目录 编程语言一、C/C++C 与 C++ 的区别(面向对象的特点)C++ 与 Python的区别判断struct的字节数static 作用Const 作用extern "C"的作用多态如何实现多态?虚函数虚函数怎么实现的?析构函数虚析构函数的作用virtual函数能不能用在构造函数中&#

Java集合/泛型篇----第一篇

系列文章目录 文章目录 系列文章目录前言一、ArrayList和linkedList的区别二、HashMap和HashTable的区别三、Collection包结构,与Collections的区别四、泛型常用特点前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站…

Spring系列学习四、Spring数据访问

Spring数据访问 一、Spring中的JDBC模板介绍1、新建SpringBoot应用2、引入依赖:3、配置数据库连接,注入dbcTemplate对象,执行查询:4,测试验证: 二、整合MyBatis Plus1,在你的项目中添加MyBatis …

Java 实现自动获取法定节假日

一、背景 在实现业务需求的过程中,遇到了需要计算 x 个工作日后的日期需求。由于工作日是每年国务院发布的,调休和休假都没有规律,所以无法使用算法进行计算。 一般的实现方案是自己维护一个工作日和调休的表,或者去爬取国务院发…

AutoSAR(基础入门篇)4.4-Autosar_BSW的Memory功能

Memory功能 一、Autosar_BSW的Memory 1、Memory 组件图 2、架构与术语解释 3、片内存储 4、片外存储

游戏加速器LSP/DLL导致WSL.EXE无法打开问题修复!

解决办法: https://github.com/microsoft/WSL/issues/4177#issuecomment-597736482 方法一:(管理员身份) netsh winsock reset 方法二: WSCSetApplicationCategory 函数设置LSP加载权限 bool NoLsp(const wchar_t* …

从零开始:使用 BIND 构建和管理您的 DNS 服务器

1 前言 在这篇文章中,我将详细介绍如何使用 BIND(Berkeley Internet Name Domain)软件包中的 named 程序来配置和管理一个基本的 DNS 服务器。 从安装 BIND 开始,到设置 DNS 区域文件,再到运行和测试您的服务器&#x…

Oracle 19c OCP 1z0 082考场真题解析第17题

考试科目:1Z0-082 考试题量:90 通过分数:60% 考试时间:150min 本文为云贝教育郭一军guoyJoe原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、演绎和未经注明出处的转载。 17. Which three …

通过数字证书对PDF电子文件进行数字签名/盖章

以下代码详细说明如何使用数字证书对PDF电子文件进行数字签名/盖章。PDF文件签署主要传递PDF文件,数字证书信息,签章图片3个信息。代码中需要的文件、数字证书、签章图片可访问开放签电子签章开源系统详细了解系统的实现与效果。也可通过gitee开源社区下…

AQS之ReentrantReadWriteLock

AQS之ReentrantReadWriteLock 一. 归纳总结 ReentrantReadWriteLock适合读多写少的场景。是可重入的读写锁实现类。其中, 写锁是独占的,读锁是共享的。 支持锁降级(持有写锁、获取读锁,最后释放写锁的过程) 锁降级可以帮助我们…