• MySQL数据分析—(4)关系数据库的三个逻辑框架


    (一)前面课程逻辑梳理

    任何一门数据的软件也好,数据构架也好,或者说是数据学科也好,最终都是要解决实际问题的,大家说是不是?

    前面jacky讲为什么要引入数据库的时候,举了一个案例,大家还记的吗?大家还记得这张图吧

    @数据分析-jacky

    jacky说这家手机公司对于手机数据的管理是混乱的,给出了3点混乱的理由,然后引出了我们要引入数据库的必要性;jacky说既然我们的数据库这么重要,那么操作数据库的软件就一定会出现,那么MySQL就是其中最流行的软件之一,是吧,然后大家跟着jacky把MySQL都安在了电脑上,前面我讲的大概就是这些内容。

    (二)本课时的逻辑

    大家有没有发现,前面我们说手机案例的时候,只是把问题抛了出来,没有说具体应该如何处理这个问题;我们说MySQL软件很流行,大家也只是安装上了,不知道有什么用,也不知道应该怎样用,是吧?

    下面的课程,jacky就会带着大家理清这些问题。

    (三)数据库设计前的基础铺垫

    先说前面手机销售公司的案例,我们抛出了问题,提出了引入共享数据管理的思想,我们说引入数据库是必要的,那结合我们实际的工作需求,我们该如何构建这个共享数据的体系呢?

    构建共享数据体系这个内容如果说的更学术一定就是数据库设计,可能有朋友问,说jacky,我听过别人的课程啊,数据库设计都是放在后面来讲的,你怎么放在前面说呢?

    熟悉jacky讲课风格的朋友都知道,jacky最重视知识的思维逻辑,这样的顺序也正符合我们实际工作中的逻辑顺序,也便于大家更好的理解知识;

    回归主题,我们要分析数据库设计之前,jacky有必要引入一些数据库的一些术语,以便后面更好的讲解;

    1.数据模型

    我们知道,在实际业务,业务数据都存在着一定的关系,我们该怎样处理这些数据呢?这里,我们处理数据的一个思路就是将这些数据问题模型化,这就是我们引入的一个概念数据模型;

    1.1数据模型的类型

    • 数据模型更理论的叫法是逻辑数据模型,主要的数据模型有四种:

      • 层次模型(Hierarchical Model)

      • 网状模型(Network Model)

      • 关系模型(Relational Model)

      • 面向对象模型(Object-Oriented Model)

    1.2 关系数据库

    关于上面的4种数据模型,jacky这里只讲解关系型数据库,因为MySQL就是一个关系数据库管理系统,其他的三类jacky都把其归类为非关系数据库;

    • 在实际工作中,关系型数据库是应用最广泛的数据库,那什么是关系型数据库呢?

      • 和Excel工作表一样,关系型数据库也采用行列二维表结构来管理数据,所以简单易懂;同时,关系型数据库可以用专门的SQL语言对数据进行操作

    1.3 关系数据库与非关系数据库的优缺点比较

    • 关系数据库

      • 优点:数据安全性,强;

      • 优点:简单易懂;

      • 但是二维表的形式存储数据,比较浪费空间,效率低
    • 非关系数据库

      • 优点:存储数据效率高

      • 缺点:突然断电容易丢失数据

      2.关系数据库的三个逻辑框架

    下面的知识非常重要,如果说本小节的课程什么都没记住,下面关系数据库的三个逻辑也一定要记住,关系数据的三个逻辑框架分为三部分:第一部分是数据结构,第二部分是操作指令,第三部分是完整性约束,一个逻辑框架下的具体含义,jacky会逐一讲解;
    大家发现没有,jacky的讲解在无时无刻的讲解逻辑,为什么我要这么强调逻辑,就拿关系数据库来说,我们按照关系数据库的三层逻辑弄清楚关系数据库的含义,那么当我们今后更深入的学习非关系数据库时,同样也要从这三个逻辑来学习,这就是学习的捷径,要善于总结,善于归纳;

    @数据分析-jacky

    2.1 数据结构

    商品编号 商品名称 销售单价 登记日期
    0001 A品牌手机 1000 2018-02-23
    0002 B品牌手机 1500 2018-02-24
    0003 C品牌手机 2000 2018-02-25
    • 关系数据库的数据结构就是二维表,我们看我们的示例图表:

      • 二维表的列,也就是垂直方向,给它一个命名,叫做“字段”,它代表了保存在二维表中的数据项目,在这个示例表中我们可以看出,从商品编号到登记日期一共有4列;对于列的约束比Excel更加严格,定义为数字的列只能输入数字,定义为日期的列只能输入日期,关于列的约束,jacky后在后面的章节中详细介绍,这里我们先有个印象就可以;

      • 那我们再来看,二维表的行,我们给它一个什么命名呢?行,我们命名为“记录”,它就相对于一条数据,我们可以看到示例表中总共有3行数据

    2.2 操作指令

    我们说关系数据三大逻辑框架的操作指令框架是指什么呢?

    • 关系数据库的操作指令就是所有的SQL语句;

    • 前面我们已经带大家安装了MySQL软件,大家还记得吗?这里,大家要清楚MySQL是一个一种CS结构的软件,即分为:客户端和服务端;我们要想访问服务器,则必须通过客户端;服务器应该一直运行,客户端则在需要使用的时候运行。

    jacky给大家画下客户端和服务端具体的交互过程:

    @数据分析-jacky

    • 左边方块里是我们数据库的客户端,右边方块里是我们的服务器,这里服务器是一直运行着的,那么MySQL具体的交互过程是怎样的呢?我们想要从数据库里调取数据,那么客户端会向我们服务器发送一条指令,告诉服务器我要调取的是怎样怎样的数据,那么服务器怎么才能接受到客户端发送的指令,做出回应呢?或者说它们是怎样沟通的呢?就是通过SQL语句,SQL语句我们也可以说是SQL语言,它作为客户端与服务器沟通的媒介,把客户端的需求翻译成服务器能听懂的语言,让服务器从客户端中调出请求,使得这个客户端能够使用取出的数据;

    • 搞清楚MySQL背后客户端与服务器交互的过程,什么是关系数据库的操作指令,SQL语句有什么作用就迎刃而解了,下面我们总结下SQL是什么?

      • SQL就是为操作数据而开发的语言,它可以提高数据库的查询效率,也可以进行数据增删改查,一系列的操作;

    2.3 完整性约束

    关于数据库的最后一个逻辑框架,完整性约束,为了深入浅出的将好这个体系的课程,jacky在这个小节只作框架展示,先不进行讲解,后面的课程有太多的实操案例供朋友们理解;在这个阶段,大家先看下我们结构导图,大概有一个印象就可以了

    好,这就是本节jacky分享的内容,谢谢大家

  • 相关阅读:
    paip.提升用户体验上传文件图片命名
    paip.提升安全性软键盘的弱点
    paip.java桌面开发应用与WEB RIA应用
    paip.提升安全性WEB程序安全检测与防范
    paip.PHP zend解密—以SHOPEX4.8.4为例
    PAIP.提升安全性COOKIE绑定IP与城市与运营商
    paip.svn不能提交CLEARUP不起作用解决方法
    paip.提升安全网站登录密码明文传输的登录高危漏洞解决方案
    paip.docfile二进制复合文档
    paip.session的调试in php
  • 原文地址:https://www.cnblogs.com/shujufenxi/p/8543532.html
Copyright © 2020-2023  润新知