【数据库基础】数据库介绍和三大范式

这篇具有很好参考价值的文章主要介绍了【数据库基础】数据库介绍和三大范式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🌾第一章 数据库简介

🕊️1.1 简介

       数据库(DataBase,DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。

      数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中的数据。

      数据库软件应该为数据库管理系统,数据库是通过数据库管理系统创建和操作的。
      数据库:存储、维护和管理数据的集合。

🕊️1.2 常见数据库管理系统

  1. Oracle

      Oracle数据库被认为是业界目前比较成功的关系型数据库管理系统。Oracle数据库可以运行

在UNIX、Windows等主流操作系统平台,完全支持所有的工业标准,并获得最高级别的ISO标准安全性

认证。

【数据库基础】数据库介绍和三大范式

  1. MySQL

      MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle旗下

产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS

(Relational Database Management System,关系数据库管理系统) 应用软件。

【数据库基础】数据库介绍和三大范式

  1. DB2

      DB2是IBM公司的产品,DB2数据库系统采用多进程多线索体系结构,其功能足以满足大中公司

的需要,并可灵活地服务于中小型电子商务解决方案。

  1. Microsoft SQL Server

      SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便

可伸缩性好与相关软件集成程度高等优点。

【数据库基础】数据库介绍和三大范式

🕊️1.3 三大范式(规范)

范式

      Normal Form范式是“符合某一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度”。简单来说可以把它粗略地理解为一张数据表的表结构所符合的某种设计标准的级别。就像英语的四级和六级,相对代表了英语的水平的高低。
满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入( insert )、删除( delete )和更新( update)操作
异常。

🍵第一范式:

【数据库基础】数据库介绍和三大范式

第一范式的定义为:

  • 符合1NF的关系中的每个属性都不可再分无重复的列

  • 在使用数据库管理系统的时候比如mysql , sqlserver等创建的数据表都满足1NF,如果不满足这个范式,是不能创建成功数据表的。属性不可再分的意思是每一个字段都是最小的,不包含其他字段。不重复,原子性

第一范式存在的问题:数据冗余,插入异常,删除异常,修改异常的问题。

  • 插入异常:如果需要新建一个系,并且有系主任。但是因为还没有学生开始学习,所以主键是空的,肯定是不能插入的。
  • 删除异常:如果需要把某个系下面学生信息都清空,那么这个系也就不存在了。
  • 修改异常∶如果需要把学生的系进行更换,就需要把三条数据里面的系名和系主任都修改才可以。

🍵第二范式:

【数据库基础】数据库介绍和三大范式

  1. 第二范式定义:

      在1NF的基础上,消除了非主属性对于码的部分函数依赖,属性完全依赖于主键 [ 消除部分子函数依赖 ]

  1. 码:

      一个表中,可以唯一决定一个元组的属性“集合”。假设K为表中的某个属性,如果在K确定了的情况下,这个表里面其他的属性都可以确定,那么K就叫做候选码,也叫码。

      比如通过id可以获取到姓名,系名,系主任名,但是不能确定课名和分数。课名可以获取分数。i学号d -------姓名,系名,系主任课名-----分数

( 学号id,课名)这个属性组就叫做码。

  1. 非主属性:

      上面说到的码里面的属性就是主属性,包括id,课名。不是主属性的就是非主属性,包括姓名,系名,系主
任,分数。

  1. 函数依赖:

      函数y=f(x)代表了给定一个x的值,y的值也是确定的。在数据表中,在属性X确定的情况下,必定能确定Y的值,那就说Y函数依赖与X写作X—Y。

      比如:在表中,给定一个学号,必定能得到唯一的一个姓名。那就说姓名函数依
赖于学号。写作:学号—姓名
在表中的函数依赖还有

  • 学号-----系名
  • 学号-----系主任
  • (学号,课名)-----成绩
  1. 完全函数依赖:

      在一张表中,若×→Y,且对于X的任何一个真子集(假如属性组×包含超过一个属性的话),x’→Y不成立,那么我们称Y对于X完全函数依赖,记作XF→Y。比如(学号,课名)-----成绩
      学号和课名都是X的真子集,但是如果只有学号,或者只有课名,是不能得到一个唯一的成绩。满足完全函数依赖的要求,所以Y完全函数依赖于X

  1. 部分函数依赖:

      如果Y函数依赖于X,但是Y不完全函数依赖于X,那就叫做部分函数依赖。比如(学号,课名)------姓名。
由学号可以得到唯一的姓名,但是由课名不能得到唯一的姓名。所以称为Y部分函数依赖X。

  1. 判断是否符合2NF

      就是看数据表中是否存在非主属性对于码的部分函数依赖。若存在,则数据表最高只符合1NF的要求,若不存在,则符合2NF的要求。
步骤:

  • 第一步:找出数据表中所有的码。( id,课名)

  • 第二步:根据第一步所得到的码,找出所有的主属性。id和课名

  • 第三步∶数据表中,除去所有的主属性,剩下的就都是非主属性了。姓名,系名,系主任,分数。

  • 第四步:查看是否存在非主属性对码的部分函数依赖。

    对于(学号,课名)→姓名,有学号→姓名,存在非主属姓名部分依赖课名。

  1. 解决的问题:数据冗余
  • 数据冗余:减少了冗余。
  1. 还存在的问题:插入异常,删除异常,修改异常的问题。
  • 插入异常∶如果需要新建一个系,并且有系主任。但是因为还没有学生开始学习,所以主键是空的,肯定是不能插入的。
  • 删除异常∶如果需要把某个系下面学生信息都清空,那么这个系也就不存在了。
  • 修改异常(解决一范式的问题):如果需要把学生的系进行更换,就需要把三条数据里面的系名和系主任都修改才可以。2NF可以只修改一个字段就可以实现。

🍵第三范式

【数据库基础】数据库介绍和三大范式

  1. 定义

3NF在2NF的基础之上,消除了非主属性对于码的传递函数依赖。也就是说,如果存在非主属性对于码的传递函数依赖,则不符合3NF的要求。

  1. 传递函数依赖:

如果Y依赖于X,Z又依赖于Y,那就说Z依赖于X。

比如:系名依赖于学号,系主任依赖于系名,那么系主任传递函数依赖于学号。不满足3NF

【数据库基础】数据库介绍和三大范式

  1. 解决问题:
  • 插入异常:如果需要新建一个系,并且有系主任但是因为还没有学生开始学习,所以主键是空的,肯定是不能插入的。现在需要新建一个系是不会出问题的。
  • 删除异常∶如果需要把某个系下面学生信息都清空,那么这个系也就不存在了。这时候清空只需要清空第二个表,不会影响其他表。不会出现异常。I

【数据库基础】数据库介绍和三大范式

【数据库基础】数据库介绍和三大范式

【数据库基础】MySQL增删改查基础操作命令

【数据库高级】数据完整性和多表查询

【数据库】事务

【数据库高级】Mysql窗口函数的使用和练习文章来源地址https://www.toymoban.com/news/detail-466957.html

到了这里,关于【数据库基础】数据库介绍和三大范式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据库三大范式的学习与数据库表设计的了解

    内容简单介绍 对于数据库三大范式的理解以及一些设计表示要注意的方面 本章内容梳理图 数据库的三大范式(Normal Forms)是关系数据库设计中用于确保数据结构化、减少数据冗余、并提高数据完整性的指导和规则。 以下是三大范式的简述: 第一范式(1NF) 定义 :如果关系

    2024年03月27日
    浏览(64)
  • 数据库的三大设计范式和BCNF

    第一范式(1NF):确保数据表中的每个列都是原子的,即每个列都包含不可再分的数据项。这意味着在每个列中不能有重复的数据,也不能包含多个值。每个数据项应该是独立的,以便能够对其进行有效的排序、搜索和过滤。 第二范式(2NF):在满足第一范式的基础上,要求

    2024年02月06日
    浏览(43)
  • 数据库三大范式是什么,又为什么要反范式?

    🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于PHP专栏:MySQL的100个知识点。 🎉欢迎 👍点赞✍评论⭐收

    2024年02月11日
    浏览(48)
  • MySQL:事务、索引、用户管理、备份、数据库设计(三大范式)

    事务 (transaction):要么都成功,要么都失败。 核心 :将一组 SQL 放在一个批次中去执行。 原则 ACID :原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)。 原子性 :一个事务中的所有步骤 要么都 成功, 要么都 失败,不能只成功一个步骤。 一致性 :包括

    2023年04月26日
    浏览(81)
  • [MySQL]数据库原理1,三大范式,E-R图,DataBase,数据库管理系统(DBMS),Relationship,实体、属性、联系 映射基数,关系型数据库,联系的度数等——喵喵期末不挂科

    希望你开心,希望你健康,希望你幸福,希望你点赞! 最后的最后,关注喵,关注喵,关注喵,佬佬会看到更多有趣的博客哦!!! 喵喵喵,你对我真的很重要! 目录 前言 认识数据库 常见的数据库管理系统应用案例。       1.数据(Data)       2.数据库(DataBase ,简

    2024年02月04日
    浏览(47)
  • MySQL笔记(一):设计范式、基础概念、数据库定义语言DDL

    MySQL是一种数据库管理系统 (DBMS),是基于客户机-服务器的数据库; 分为两个不同的部分, 服务器软件(MySQL DBMS)是负责所有数据访问和处理的一个文件,这个软件运行在称为数据库服务器的计算机上,与数据文件打交道; 客户机则是与用户打交道的软件,对于用户提出的

    2024年02月03日
    浏览(62)
  • 【解惑】介绍三大数据库的with语句的写法及使用场景

    WITH 子句通常被称为 \\\"Common Table Expressions\\\"(CTE),俗称内存临时表,当使用 WITH 语句时,应注意具体的数据库版本和支持情况。以下是对 MySQL、Microsoft SQL Server(MSSQL)和 Oracle 数据库的 WITH 语句用法示例,以及在 WHERE 子句中添加分组关联条件实现对比最大聚合值: 在 MySQL5.

    2024年02月14日
    浏览(41)
  • 数据库|数据库范式(待完成)

    数据库的一般操作是通过SET是对数据进行设置,同时用GET去获得存放在数据库中的信息。 产生的背景(没有规范化的坏处/带来的问题) 规范化表格设计的要求 一是要使得数据库易于理解(易于理解才方便在使用过程中快速上手) 易于增强和扩展(在现实开发场景中,往往

    2024年01月17日
    浏览(47)
  • 数据库的设计规范:第一范式、第二范式、第三范式、巴斯范式

    目前关系型数据库有六种常见范式,按照范式级别,从低到高分别是: 第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式) 。 数据库的 范式设计越高阶,冗余度就越低 ,同时高阶的范式 一定符合

    2024年02月05日
    浏览(94)
  • 数据库期末复习(SQL,范式,数据库设计例题)

    创表 视图 例题:建立一个视图V1,显示老师与学生的授课关系,包括年份,学期,课程名称,老师ID,老师姓名,学生ID,学生姓名 向表中添加或删除约束 添加信息 例题:给“Aufr”同学选上2010年秋季学期的所有课程 删除信息 例题:删除“Comp. Sci.”学院“Ploski”同学,所有

    2024年02月02日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包