构建日期:2023年3月12日
MongoDB版本:v6.0.4
学习地址
https://www.bilibili.com/video/BV12T4y177QT
中文文档:http://mongoosejs.net/docs/
英文文档:https://mongoosejs.com/docs
下载mongodb和mongosh
mongodb下载:https://www.mongodb.com/try/download/community
mongosh下载:https://www.mongodb.com/try/download/shell
mongodb在6.x以后已经不自带shell了,如果想要使用shell,需要单独安装。
在安装mongodb和mongosh的时候可以选择msi安装包,也可以选择zip安装包。如果选择zip包,需要手动把bin目录添加到环境变量中。
mongodb的bin目录下mongod.exe
用来启动 MongoDB 服务,mongos.exe
用来管理分片集群。
mongosh的bin目录下mongosh.exe
用来shell连接,即命令行操作mongodb。
如果直接运行 mongosh.exe
,默认会连接 mongodb://localhost:27017
的 MongoDB 服务。
概念解析
SQL术语/概念 | MongoDB术语/概念 | 解释/说明 |
---|---|---|
database | database | 数据库 |
table | collection | 数据库表/集合 |
row | document | 数据记录行/文档 |
column | field | 数据字段/域 |
index | index | 索引 |
table joins | 表连接,MongoDB不支持 | |
primary key | primary key | 主键,MongoDB自动将_id字段设置为主键 |
原生命令
# 显示帮助
help
# 显示有关数据库方法的帮助
db.help()
# 显示数据库
show dbs
# 显示当前数据库
db
# 选择数据库
use 数据库名
# 如果数据库不存在,则创建数据库,存在则切换到该数据库。
# 但是数据库不存在创建时,如果数据库中没有任何数据,则不会真正创建。也就是,在真正创建数据表时,才会真正创建数据库。
# 显示当前数据库中的所有集合
show collections
show tables
# 打印当前数据库的用户列表。
show users
# 打印当前数据库的所有角色的列表,包括用户定义角色和内置角色。
show roles
# 查询当前数据库中的某个集合的所有文档
db.集合名.find()
# 向当前数据库的某个集合中插入文档
db.集合名.insert()
db.集合名.insertOne()
db.集合名.insertMany()
# 移除当前数据库的某个集合的文档
db.集合名.remove()
db.集合名.deleteOne()
db.集合名.deleteMany()
db.集合名.findOneAndDelete()
# 更新
db.集合名.update()
db.集合名.updateOne({age: 11}, {$set: {age: 12}})
db.集合名.updateMany()
# 删除数据库,删除数据库时需要使用use切换到该数据库
db.dropDatabase()
# 查看数据库信息
db.stats()
# 删除集合
db.集合名.drop()