数据库丨什么是数据库?
本文将从四个方面介绍数据库:
1.什么是数据库。
2.数据库的种类。
3.什么是数据库管理系统。
4.什么是SQL和MySQL。
一. 什么是数据库?
在提到一个名词时,我们首先想弄明白的是:它是什么?
那么,什么是数据库?
我们都知道,冰箱是用来存放食物的,那数据库呢,很简单,就是用来存放数据的。
它与我们的生活息息相关,例如,我们从余额宝中查看自己的每日收益,这个收益的数据,就是从数据库中读取的。
在介绍数据库之前,我们先要清楚,数据是如何存储的?
在古代的时候,我们的祖先记录、存储数据,用的方法就是在绳子上打结,这些被打上结的绳子,就是我们所说的“数据”,但它是有缺点的:很难保存,也很难提取。
到后来,逐渐用甲骨、竹筒、纸张来储存文字数据,到了近代又发明了录音机、摄像机来储存音频数据。虽然这些数据的载体一直都在变化,但是,数据存储的方式并没有多大的变化,都属于传统的存储方式。
直到信息化时代的到来,数据的存储方式才发生了重大的变革,朝着两个方向发展:
文件与数据库。
文件,就是把数据存放在Excel表格中,形成可读写的文件之后进行存储,然后可以很方便地对文件的数据进行筛选、处理和提取。
而数据库,则是把数据按照一定的结构存储在计算机中,相当于存放文件的文件柜。
有人会问:把数据存放在自己电脑的Excel表中就可以了,为什么还要有数据库呢?
当然是因为数据库具有更多优势。
Excel表就相当于一个移动硬盘,你使用了其他人就不能够使用。
而数据库则相当于网盘,它可以允许很多人同时使用里面的数据。网盘的容量也是大于硬盘的,数据库不仅能够持续化存储,而且读写速度也很高,可以极大程度地保证数据的有效性,而不是像Excel文件一样,极易产生修改错误。
二. 数据库有哪些种类?
在早期,较为流行的是:层次式数据库,网状数据库和关系型数据库。
现如今,最常用的有两种,分别是:关系型数据库和非关系型数据库,其中,关系型数据库是最为常见的。
1.关系型数据库
(比如常见的SQL Server、MySQL、Oracle)
我们知道,Excel是一张一张的二维表,每个表都是由行和列组成的。同样,关系型数据库中存放的,也是一张一张的表,但各个表之间是具有联系的。
简单来说,关系数据库=多个表+各表之间的关系。
这里有两个概念:多个表中每一张表的结构和各表之间的关系。
①多个表中每一张表的结构:
每一个表都有一个名字,即表名。
表中包含有带有列名的列,和记录数据的行。
比如一个学生表中,有四列,每一列的列名分别是学号,姓名,出生日期,性别。而表的每一行分别对应一个学生的数据,如学号为0001的同学,姓名是猴子,出生日期1989年1月1日,性别是男。这就是一张表的结构。
②各表之间的关系:
在生活中,你是你爸爸的儿子,你又是你儿子的爸爸,这个是生活上的关系。
同样的,数据之间也具有关系。那数据库中的多个表间是如何建立联系的呢?比如学生表和成绩表,前面提到过,假设学生表的四列分别代表学号,姓名,出生日期,性别。成绩表的三列分别是学号,课程号和成绩。
请问:这两个表有什么共同点?
两个表都有『学号』,也就是说,它们是通过『学号』关联起来的,例如想知道学生表中“0001”号的成绩是多少,就可以在成绩表中查找学号为“0001”号的那一行,最后在成绩表里发现有3行数据的学号都是“0001” ,对应的就找到了该学生的三门课程的成绩。
关系就是数据能够对应的匹配,它在关系数据库中被成为联结,英文名是join。
2.非关系型数据库(NoSQL)
所谓非关系型数据库,是相对于关系型数据库而言的。
我们都知道,关系型数据库通常都是处理一些结构化的数据,这些数据通常都具有某些对应的关系;而非关系型数据库则通常用于存储那些类型不固定的,也没有什么规律的数据。
三. 什么是数据库管理系统?
如果说,把数据库比作一个存放许多文件的文件柜,那么数据库管理系统就相当于一名文件管理员,能够帮助我们管理数据库中的数据。
比如我们要查找某一个文件,如果我们按顺序一个一个找下去,文件柜存放的文件一多,就可能得找到猴年马月。
这个时候我们就需要按照一定的规则去寻找,比如说“在第2层第4列的架子上”。
查找规则的实施,就需要数据库管理系统来实现。
四.什么是SQL,MySQL
1.SQL
SQL是用来操作数据库中的数据,所使用一个工具。
如果把数据库比作一碗米饭,里面的米是数据。现在,我们要吃碗里的米饭,怎么才能将饭取出来放进嘴里呢?
这个时候,我们就会拿出一双筷子,用筷子来操作碗里的米饭。这里的筷子就是SQL。
SQL是用来操纵数据库的一种语言,是一种编程语言。
2.MySQL
MySQL是一种数据库的软件。数据库和MySQL的关系,就像是聊天软件与QQ、微信的关系。
世界上有各种各样的数据库,比如Oracle、MySQL、SQL Server等等,一般互联网公司都会使用MySQL,因为它是免费的,使用范围最广的。
最后,总结一下:
数据库是一种数据存储的系统,其中最具有代表性的是MySQL,它是使用最广泛的数据库,我们使用SQL语言对它进行操作。