MongoDB
MongoDB介绍
- MongoDB 是文档型 NoSQL 数据库;MySQL / PostgreSQL / SQLite 是关系型 SQL 数据库
- 关系型数据库:数据拆成多张表,再通过 ID 关联。
- MongoDB:相当于相关数据组织成一个 JSON 风格文档
- MongoDB 最大特点:直接存“对象”
- MongoDB 是一个基于文档存储的数据库
- MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的
- MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易
- MongoDB不需要设计表结构
- MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组
- 也就是说你可以任意往里面存数据(非常地灵活),没结构性这么一说
- MongoDB在前端入门非常简单,因为在MongoDB把表称之为集合,存储的是对象,以JS的方式写,不用写sql语法
- MongoDB比较简单,不用那么麻烦,做一些简单的业务就足够
MongoDB的存储结构
- 可以有多个数据库
- 一个数据库中可以有多个集合 (可以认为是mysql的表)
- 一个集合中可以有多个文档 (可以认为是mysql的表记录)
- 文档结构很灵活,没有任何限制
- MongoDB非常灵活,不需要像MySQL那样先创建数据库、表、设计表结构
- 在这里只需要,当你需要插入数据的时候,只需要指定往哪个数据库的哪个集合操作就可以了
- 一切都有MongoDB来帮你自动完成建库表这事儿
{
qq:[
{name:"张三",age:15},
{name:"张四",age:16},
{name:"张五",age:17},
{name:"张六",age:18}
],
products:[
],
.............
}
下载
安装
配置环境变量
把MongoDB目录中找到bin,在系统变量中的path添加 D:\tools\MongoDB\Server\4.0\bin
在终端,mongod --version,会成功打印出版本号等相关信息
mongod --version
关系型数据库和非关系型数据库
- 简单来说,表就是关系型,或者说表与表之间存在关系
- 所有关系型数据库都需要通过
sql语句才操作 - 所有的关系型数据库在操作之前都需要设计表结构
- 关系型数据库 (mysql + oracle +sql server)
- 而且数据表还支持约束
- 唯一的
- 主键
- 默认值
- 非空
- 所有关系型数据库都需要通过
- 非关系型数据库非常的的灵活
- 有的非关系型数据库就是key-value(键值对)的概念
- 就是没有表的概念
- 整个数据库存的是就是key-value对
- 但是MongoDB是长的最像关系型数据库的非关系型数据库 mysql MongoDB
- 数据库 -> 数据库
- 数据表 ->集合(数组)
- 表记录 ->文档对象