数据库 (dataBase)概念呢?
什么是数据库?数据库是一个什么样的概念
- 说白了,数据库就是存储数据的仓库,它是按照数据结构来组织、存储、管理我们数据的仓库,数据库是对数据保存持久化的最好选择。
那么问题来了,我们为什么要把数据存储到数据库里面呢?直接搞个对象来收集整理数据,然后用一个变量来接收这个对象,即将数据存储到一个变量中,这样存起来不是更方便吗?哪用得到数据库呢?
- 这是因为我们的程序都是存储在内存里面的,你搞个变量存着数据,有一定的风险因素,比如哪天服务器崩掉了或者重启了、程序运行结束、计算机断电,都会导致数据的丢失,为了确保数据的安全性,我们就需要用到了数据库。
数据库的应用场景有哪些?
- 用户在注册、登录的时候会用到,因为我们要存储用户的登录信息。
- 电商的商品列表展示信息。
数据库分类,主要分为以下两大类。
关系型数据库 (RDBMS,即Relational Database Management System)
- 常见关系型数据库有:MySQL、Oracle、DB2、SQL Server。
- 特点:关系型数据库里面全是各种各样的表,可以这样说,关系型数据库是基于表而存在的。
- 所有的关系型数据库都是通过SQL(结构化查询语言)来操作的,像JS和JAVA语言一样,SQL也是一门标准的语言,只不过是它用于数据库查询方面。
- 学会了SQL,意味着我们可以操作任何一种关系型数据库(比如My SQL、DB2等等),但在W3C上SQL语言目前还没有一个成型的规范,没有做到统一标准,也就意味着着各大数据库的运营商(比如甲骨文公司Oracle),各自有各自的规范风格,所以我们学习的SQL只是一门通用标准数据库语言,相当于一块敲门砖,如果我们想学习具体的数据库语言,还得学习它们对应的官方文档。
非关系型数据库(又称NoSQL 或者 Not Only SQL)
- 这里的SQL代表的是结构化查询语言的意思,NO和Not都是反对的意思,即反对SQL标准化运动,我们会很好奇,好端端的,为什么要提出反对呢,让它成为一种标准化不好、并不香吗?
- 标砖化语言固然很香,一门语言如果成为了标准化,好处之一便是大大节省了学习者的学习成本,学习一门语言足够了,而不用再学习辅助语言
- 标准有标准的好处,但同时对于一些开发创新者来说(比如那些写框架,写生态的大大来说),同样也带来了坏处,因为标准化它限制了别人的创新成果,遏制了长远生态的发展,限制了创新思维。)
- 接着上面说哈,为什么知道HTML现在这么流行,正因为它已经统一了行业规范,已经到了H5版本,得到了更多开发者的认可,但我们还知道有一门语言叫XML,它现在处于低迷,渐渐淡出别人的视野,一方面是自身的不足,此外呢,HTML成为了标准流行语言后,学习者都去学习HTML了,任你怎么推广XML,都是没人学的了,针对这样一种生态环境,这就是为什么有些人要提出反对标准化运动了。
非关系型数据。还可以细分为两类。
- 键值对数据库:Redis
- 文档数据库:MongoDB
网友评论