当我们开始接触一个新的邻域,一定要了解它是什么,它的历史,它的周边邻域.就像刚刚认识一个新的朋友,你会对他有一个起初的印象,然后随着深入的接触,你会了解他过去的经历,更进一步的去了解他这个人,随着关系的不断深入,他会把他的朋友介绍给你,怎么样?是不是很有趣呢?
一.什么是数据库
效果图.gif
数据库就是存储数据的仓库,由许多张表组成,每一张表中都可以存储许多不同类型的数据
- 数据库就是存储数据的仓库
- 数据库和Excel很像, 一个Excel文件就相当于一个数据库
- 一个Excel文件中可以有很多的表, 一个数据库中也可以有很多的表
- Excel文件的每个表就是专门用户用于存储数据的
- 数据库中的每个表也是专门用于存储数据的
- 所以学习数据库就是学习如何新建表,往表中存储数据和操作表中的数据
- Excel本质是一个文件, 数据库本质上也是一个文件
- Excel文件中可以有很多表, 数据库文件中也可以有很多的表
- Excel文件的每个表就是用来存储数据的, 数据库文件的每个表也是用来存储数据的
-----------------------------极客江南
二.什么是MySQL
- MySQL是一个关系型数据, MySQL是由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。
- MySQL是最流行的关系型数据库管理系统之一,在WEB 应用方面,MySQL是最好的关系数据库
- 下载地址: https://dev.mysql.com/downloads/windows/installer/5.7.html
----------------------------------------极客江南
MySql是数据库的一种,是一种关系型数据库,淘宝最开始就是用的它,但是对于数据量巨大的情况,它有很多弊端,Oracle是JAVA的公司,大家足以了解它的强大之处,更重要的是它是开源的
三.什么是关系型数据库
1.数据库萌芽阶段
最初程序员们把磁盘上的文件当做数据库来使用, 但是由于不方便管理和不安全所以后来就有了第一代数据库(层次模型和网状模型数
据库)
-----------------------------------------------极客江南
2.第一代数据库
层次模型数据库
层次型数据库.png
这种数据库的优点在于关系简单,只有一个根节点,缺点在于,如果一个节点有多个父节点必须重新建一个树状图,数据冗余,并且如果想删除一个节点必须连它的子节点一起删除,查询某一个节点,必须知道它的父节点
- 特点:
- 类似于HTML结构, 根结点在最上端,层次最高,子结点在下,逐层排列
- 有且仅有一个结点没有父结点,它就是根结点
- 其他结点有且仅有一个父结点
- 缺点:
- 如果节点有多个父节点, 冗余数据过多.
- 例如某个教师既数据A系又属于B系, 那么只能引入冗余数据
- 所有的子节点不能脱离父节点而单独存在
- 如果要删除父节点,那么父节点下面的所有子节点都要同时删除,但是可以单独删除一些叶子节点
- 每个记录类型有且仅有一条从父节点通向自身的路径
- 查询节点的时候必须知道其双亲节点
---------------------------------------------极客江南
网状模型数据库
网状数据库是层次数据库的升级版,允许一个节点有多个父节点.缺点在于结构复杂,不利于掌握与维护
- 特点:
- 类似于增强版层次模型
- 允许结点有多于一个父结点
- 可以有一个以上的结点没有父结点
- 结构比较复杂,随应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握
-----------------------------------------------------极客江南
3.第二代数据库
关系型数据库
关系型数据库.png
关系型数据库的特点是在每个独立的表中通过公共字段建立联系,
缺点是多表查询效率低
- 特点:
- 1.每个表都是独立的
- 2.表与表之间通过公共字段来建立关系(例如ID字段)
- 3.多表查询效率低
- SQL Server/Oracle/MySQL
非关系型数据库
可以通过百度 NoSQL了解非关系型数据库,它相当于关系型数据库的一个升级
- 解决了关系型数据库多表查询的效率问题
- Redis、mongodb等
https://baike.baidu.com/item/NoSQL/8828247?fr=aladdin