【软件设计师-从小白到大牛】上午题基础篇:第三章 数据库系统

文章目录

  • 前言
  • 章节提要
  • 一、三级模式两级映射
    • 真题链接
  • 二、数据库的设计过程
    • 真题链接
  • 三、E-R模型
    • 真题链接
  • 四、关系代数
    • SQL基础(补充)
  • 五、规范化理论
    • 1、函数依赖
    • 2、价值与用途
    • 3、键
    • 4、范式
    • 5、模式分解
  • 六、并发控制
    • 真题链接
    • 分布式数据库特点(补充)
    • 真题链接
  • 七、完整性约束
  • 八、数据库安全
    • 真题链接
  • 九、数据备份
  • 十、数据库故障与恢复
    • 真题链接
  • 十一、数据仓库与数据挖掘
  • 十二、反规范化
  • 十三、大数据

前言


本系列文章为观看b站视频以及b站up主@zst_2001系列视频所做的笔记,感谢相关博主的分享。如有侵权,立即删除。
视频链接:视频链接(注:文章中有关图片等内容未标明出处均出自该视频)
b站up主页:b站up

章节提要

上午下午均有涉及
在这里插入图片描述

一、三级模式两级映射

在这里插入图片描述

  • 在数据库系统中,视图是一个虚拟表,查询时可以从一个或者多个基本表或视图中导出

真题链接

  • 采用二维表格结构表达实体类型及实体间联系的数据模型是 关系模型
  • 数据库系统通常采用三级模式结构:外模式、模式和内模式。这三级模式分别对应数据库的 视图、基本表、存储文件
  • 数据的物理独立性和逻辑独立性分别是通过修改 模式与内模式之间的映像、外模式与模式之间的映像
  • 在数据库系统中,一般由DBA使用DBMS提供的授权功能为不同用户授权,其主要目的是为了保证数据库的 安全性
  • 采用三级结构/两级映像的数据库体系结构,如果对数据库的一张表创建聚簇索引,改变的是数据库的 内模式

二、数据库的设计过程

在这里插入图片描述

真题链接

  • 确定系统边界和关系规范化分别在数据库设计的 需求分析和逻辑设计 阶段进行。
  • 在数据库逻辑结构设计阶段,需要 需求分析 阶段形成的 需求说明文档、数据字典和数据流(程)图 作为设计依据。
  • 关系规范化在数据库设计的 逻辑设计 阶段进行。
  • 在基于Web的电子商务应用中,访问存储于数据库中的业务对象的常用方法之一是 JDBC

三、E-R模型

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

  • 当联系E的类型为 * : * 时必须将E转换成一个独立的关系模式
  • E-R模型向关系模型转换时,两个以上实体之间多对多的联系应该转换为一个独立的关系模式,且该关系模式的关键字由这些实体的关键字组成
  • (注:下图来自希赛网资料)
    希赛网资料希赛网资料
    (说明:E-R图转关系模式的转换原则)
  • (注:下图来自前言中up主视频)image
    (说明:分E-R图之间的冲突)

1)例题
在这里插入图片描述

正确答案:C
解析:A、B、C每个实体各转为1个关系模式,多对多关系转为1个关系模式,总共最少可转换为4个关系模式。

真题链接

  • E-R图转换成关系模型时,对于实体E1与E2间的多对多联系,应该将 E1与E2码加上联系的属性独立构成一个关系模式

四、关系代数

在这里插入图片描述

  • 先进行选择或投影操作后再进行笛卡尔积操作效率更高。
  • 若自然连接时无相同属性列,则自然连接的结果和笛卡尔积结果相同
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 对于连接操作不写条件默认是将两个关系的相同字段作等值
  • 左外连接:以左边的关系为基础,寻找左边每一个元组是否可以与右边关系的每一元组进行自然连接,可以自然连接则连接结果即为自然连接的结果,如果不能则将其余部分填成null。最终,所有连接后的结果就组成了左外连接结果
  • 右外连接与左外连接类似:是以右边关系为基础来进行上述操作
  • 全外连接:左外连接结果和右外连接结果进行并运算。
  • (注:下图来自《数据库系统概论》(第6版)(王珊、杜小勇、陈红主编,高等教育出版社))
    在这里插入图片描述
    (说明:外连接相关解释)(了解即可)

SQL基础(补充)

  • 有聚合函数时用Having

  • 先分组再进行聚合函数的计算

  • having+聚合函数正确);where+聚合函数(错误)

  • (注:下图来自希赛网资料)希赛网资料希赛网资料

  • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))
    imageimage
    注:具体SQL内容可参考该专栏。

五、规范化理论

1、函数依赖

在这里插入图片描述

2、价值与用途

在这里插入图片描述

3、键

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

正确答案:例1:A,例2:ABCD,例3:B
解析:依据例题上方的方法做,画图分析即可。

4、范式

  • (注:下图来自前言中up主视频)image
    (说明:函数依赖的公理系统(Armstrong公理系统))
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

正确答案:去掉“高级职称人数”。

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

正确答案:将CNO、CREDIT提取出来做一个新的关系模式,在原来关系模式中去掉CREDIT

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

正确答案:将DNO、DNAME、LOCATION独立出来成为一个关系模式,原关系模式只剩前三个字段

在这里插入图片描述

  • (注:下图来自前言中up主视频)(了解即可)image在这里插入图片描述

正确答案:该关系模式候选键可能为SJ、ST,所以不存在非主属性,属于第三范式,而该关系的函数依赖:SJ->T、T->J,而T不是候选键,所以不是BC范式。

1)例题
在这里插入图片描述

正确答案:C、D、A
解析:一个部门对应多个职工,应该在职工表中增加部门号,建立起职工和部门的联系。由于第二题已经建立了职工号和部门号的关系,所以无需再添加部门号,而商品号可以确定商品名称,也无需商品名称。所以选C、D、A。

5、模式分解

在这里插入图片描述

  • 将分解后的的关系进行自然连接,如果可以得到原所有属性则是无损连接
  • 无损连接
    (注:下图来自希赛网)
    image
  • (注:下图来自希赛网)
    image
    (说明:是否为无损分解的判断方法)
  • 保持函数依赖
    (注:下图来自希赛网)
    image
    (说明:是否保持函数依赖的判断方法)

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

六、并发控制

在这里插入图片描述

  • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))在这里插入图片描述
    (说明:事务的原子性、一致性、隔离性、持久性的相关解释)

真题链接

  • “当多个事务并发执行时,任一事务的更新操作直到其成功提交的整个过程对其他事务都是不可见的”,这一性质通常被称为事务的 隔离性
  • 事务的 持久性 是指,当某个事务提交(COMMIT)后,对数据库的更新操作可能还停留在服务器磁盘缓冲区而未写入到磁盘时,即使系统发生故障,事务的执行结果仍不会丢失。

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

分布式数据库特点(补充)

  • (注:下图来自前言中up主视频)
    image
    (说明:分布式数据库的相关特点)

真题链接

  • 在分布式数据库系统中,位置透明 是指用户无需知道数据存放的物理位置。
  • 逻辑透明 是指局部数据模型透明,即用户或应用程序无需知道局部使用的是哪种数据模型;分片透明 是指用户或应用程序不需要知道逻辑上访问的表具体是如何分块存储的。
  • 当某一场地故障时,系统可以使用其他场地上的副本而不至于使整个系统瘫痪。这称为分布式数据库的 可用性

七、完整性约束

在这里插入图片描述

八、数据库安全

在这里插入图片描述

  • (注:下图来自前言中up主视频)image
    (说明:存储过程具体解释)

真题链接

  • 数据库的安全机制中,通过提供 存储过程 供第三方开发人员调用进行数据更新,从而保证数据库的关系模式不会被第三方所获取。

九、数据备份

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

十、数据库故障与恢复

在这里插入图片描述

真题链接

  • 软硬件故障通常造成数据库中的数据破坏。数据库恢复就是 在尽可能短的时间内,把数据库恢复到故障发生前的状态
  • 计算机系统的软硬件故障可能会造成数据库中数据被破坏。为了防止这一问题,通常需要 定期将数据库作备份:在进行事务处理时,需要将数据更新写入日志文件,以便发生故障时恢复数据库。
  • 为了保证数据库中数据的安全可靠和正确有效,系统在进行事务处理时,对数据的插入、删除或修改的全部有关内容先写入 日志文件;当系统正常运行时,按一定的时间间隔,把数据库缓冲区内容写入 数据文件;当发生故障时,根据现场数据内容及相关文件来恢复系统的状态。

十一、数据仓库与数据挖掘

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

  • (注:下图来自前言中up主视频)(了解即可)
    image

十二、反规范化

在这里插入图片描述

十三、大数据

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

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL查询(基础到高级)

目录 一、单表查询: 1.基本查询: 1.1 查询多个字段: 1.2 去除重复记录: 2. 条件查询: 2.1 语法 2.2 条件分类: 比较运算符: between..and..使用示例: ​编辑 in(..) 使用示例&…

作业 练习题

内科护理学 参考试题 一、单项选择题(每题2分,共100分) 1.由于心排出量突然下降而出现的晕厥称为( )。 A.心脏骤停 B.病窦综合征 C.阿一斯综合征 D.倾倒综合征 2.护理服用洋地黄制剂的患者时,下列措施错误的是( )。 A.给洋地…

MasterAlign相机参数设置-曝光时间调节

相机参数设置-曝光时间调节操作说明 相机参数的设置对于获取清晰、准确的图像至关重要。曝光时间是其中一个关键参数,它直接影响图像的亮度和清晰度。以下是关于曝光时间调节的详细操作步骤,以帮助您轻松进行设置。 步骤一:登录系统 首先&…

JeecgBoot v3.5.5 版本发布,性能大升级版本—开源免费的低代码开发平台

项目介绍 JeecgBoot是一款企业级的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue3,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领…

【C++】布隆过滤器简单操纵模拟以及常见题目

🌏博客主页: 主页 🔖系列专栏: C ❤️感谢大家点赞👍收藏⭐评论✍️ 😍期待与大家一起进步! 文章目录 前言一、求下标仿函数的建议二、布隆过滤器代码面试题1.近似算法:2.精确算…

链表的分割——哨兵位

现有一链表的头指针 ListNode* pHead,给一定值x,编写一段代码将所有小于x的结点排在其余结点之前,且不能改变原来的数据顺序,返回重新排列后的链表的头指针。 思路,把链表分成两个新链表,然后连接起来 代码…

MySQL---优化日志

目录 一、MySQL优化 3、mysql server上的优化 3.1、MySQL查询缓存 3.2、索引和数据缓存 3.2、线程缓存 二、MySQL日志 2.1、redo log 重做日志 2.2、undo log 回滚日志 2.3、错误日志 2.4、查询日志 2.5、二进制日志 2.5.1、基于binlog数据恢复实践操作 六、慢查…

mysql 5.7 修改密码

为了提高安全性 mysql5.7中user表的password字段已被取消,取而代之的事 authentication_string 字段,当然我们更改用户密码也不可以用原来的修改user表来实现了。下面简绍几种mysql5.7下修改root密码的方法(其他用户也大同小异)。…

iOS加固保护技术:保护你的iOS应用免受恶意篡改

目录 转载:开始使用ipaguard 前言 下载ipa代码混淆保护工具 获取ipaguard登录码 代码混淆 文件混淆 IPA重签名与安装测试 转载:开始使用ipaguard 前言 iOS加固保护是直接针对ios ipa二进制文件的保护技术,可以对iOS APP中的可执行文件…

Nuxt 菜鸟入门学习笔记:路由

文章目录 路由 Routing页面 Pages导航 Navigation路由参数 Route Parameters路由中间件 Route Middleware路由验证 Route Validation Nuxt 官网地址: https://nuxt.com/ 路由 Routing Nuxt 的一个核心功能是文件系统路由器。pages/目录下的每个 Vue 文件都会创建一…

套接字socket编程的基础知识点

目录 前言(必读) 网络字节序 网络中的大小端问题 为什么网络字节序采用的是大端而不是小端? 网络字节序与主机字节序之间的转换 字符串IP和整数IP 整数IP存在的意义 字符串IP和整数IP相互转换的方式 inet_addr函数(会自…

【计算机毕业设计】基于SpringBoot+Vue大学生心理健康管理系统的开发与实现

博主主页:一季春秋博主简介:专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。主要内容:毕业设计(Java项目、小程序等)、简历模板、学习资料、面试题…

1 MySQL 高级(进阶) SQL 语句(一)

目录 1 MySQL SQL 语句 1.1SELECT 1.2 DISTINCT 1.3 WHERE 1.4 AND OR 1.5 in 1.6 BETWEEN 2 通配符 ----通常通配符都是跟 LIKE 一起使用的 2.1 LIKE 2.2 ORDER BY 3函数 3.1数学函数 3.2 聚合函数 3.3 字符串函数 4 GROUP BY 4.1 HAVING 5 别名 6 子查询 …

JavaScript中的解构赋值

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 对象解构赋值⭐ 数组解构赋值⭐ 默认值和剩余元素⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚…

数据湖在爱奇艺数据中台的应用

01 我们眼中的数据湖 作为爱奇艺的数据中台团队,我们的核心任务是管理和服务公司内的大量数据资产。在实施数据治理的过程中,我们不断吸收新的理念,引入尖端的工具,以精细化我们的数据体系管理。“数据湖”作为近年来数据领域广泛…

机器学习之正则化与验证提高模型泛化

文章目录 正则化(Regularization):验证(Validation): 正则化和验证是机器学习中重要的概念,它们帮助提高模型的性能和泛化能力。让我详细介绍一下这两个概念: 正则化(Re…

【完美世界】天仙书院偷食也就算了,竟然还偷院长的孙女,美滋滋

Hello,小伙伴们,我是小郑继续为大家深度解析完美世界系列。 齐道临从天仙书院劫走石昊,为何天仙书院不仅没去找他麻烦,反而给他一块随意进入渡劫神莲池的令牌?石昊来到上界也是闹出不小的动静,先是在恶魔岛的神碑留名&…

LeetCode 75-02:字符串的最大公因子

前置知识:使用欧几里得算法求出最大公约数 func gcdOfStrings(str1 string, str2 string) string {if str1str2 ! str2str1 {return ""}return str1[:gcd(len(str1), len(str2))] }func gcd(a, b int)int{if b 0{return a}return gcd(b, a%b) }

求组合数(递归版)(杨辉三角形)

description 请编写递归函数&#xff0c;求组合数。 函数原型 double Cmb(int x, int y); 说明&#xff1a;x 和 y 为非负整数&#xff0c;且 x≥y&#xff0c;函数值为组合数 C x y ​ 。 裁判程序 #include <stdio.h> double Cmb(int x, int y); int main() { int m…

使用Python+Flask/Moco框架/Fiddler搭建简单的接口Mock服务

一、Mock测试 1、介绍 mock&#xff1a;就是对于一些难以构造的对象&#xff0c;使用虚拟的技术来实现测试的过程mock测试&#xff1a;在测试过程中&#xff0c;对于某些不容易构造或者不容易获取的对象&#xff0c;可以用一个虚拟的对象来代替的测试方法接口mock测试&#x…