mongo 的基本操作

mongo 和 mysql 一样,都有一些终端命令,如查看数据库,查看集合,新增集合,删除集合等

数据库的操作

在终端,使用 mongo 命令,进入mongo的shell

查看所有的数据库

show dbs;

在这里插入图片描述

查看当前使用数据库

db;
在这里插入图片描述

这里可能有的同学我都没有test库,为啥会有test这个数据库?
个人理解是mongo 是一个动态的数据库,他会默认的给你创建一个数据库而不需要你自己手动来创建。

查看当前数据库状态

db.stats();

查看数据库中所有的集合

show collections;
在这里插入图片描述

新增数据库

use xxx xxx 是数据库名称
mongo 的基本操作_第1张图片

这里可能有的人又会说,使用use xxx 确实切换了数据库,但是在show dbs 里面怎么看不到,这是因为mongo 给你创建了数据库,但是里面没有东西,等有东西的时候自动显示出来。mongo 的基本操作_第2张图片

删除数据库

db.dropDatabase()

mongo 的基本操作_第3张图片

数据库的CRUD

所有的数据库都有增删改查(CRUD), mongo 也有crud, 但是mongo 写的不是sql语句,而是类似js 一样,来调用方法。

插入文档

插入单条数据

db.collection.insertOne(obj): 将单个文档插入集合collection中,这个会在当前数据库自动创建一个集合collection,然后插入文档的内容

mongo 的基本操作_第4张图片

这里的文档内容可以不同,插入的内容也可以不同哦!如:
mongo 的基本操作_第5张图片

插入多条数据

db.collection.insertMany([obj1, obj2])

mongo 的基本操作_第6张图片
mongo 的基本操作_第7张图片

新的文档如果没有指定字段_id,则会自动添加一个字段_id作为主键
自动的主键是一个ObjectId对象,该对象是通过调用函数ObjectId()创建的
它的原理是根据时间戳+机器码+进程Id+自增量生成的一个十六进制的唯一字符串
使用ObjectId函数还可以把某个字符串还原成一个ObjectId对象,例如ObjectId("xxxxx")

查询数据

db.inventory.find( {} ) : 如果里面不传参数,是全查数据

mongo 的基本操作_第8张图片

传入参数类似filter函数,如:
mongo 的基本操作_第9张图片

修改文档

更新单个文档

db.collection.updateOne(, ): 修改单个文档是单挑查询出来,然后进行修改;
mongo 的基本操作_第10张图片

更新多个文档

db.collection.updateMany(, ):更新多个文档是,通过filter查询出多条来,进行更新.
mongo 的基本操作_第11张图片

替换单个文档

db.collection.replaceOne(, ):先通过filter条件来查询文档(只会找到第一条),然后进行替换;
mongo 的基本操作_第12张图片
##删除文档

删除一条数据

db.collection.deleteOne(查询对象): 先通过filter函数来查询一条数据,然后进行删除;
在这里插入图片描述

删除多条数据

db.collection.deleteMany(查询对象): 通过filter函数查询多个,然后进行删除。
mongo 的基本操作_第13张图片

你可能感兴趣的:(数据库,数据库,mysql,database)