基本常用命令
数据库操作
选择和创建数据库,如果不存在则自动创建
use 数据库名称
查看所有数据库(有权限)
show dbs
或
show databases
查看当前正在使用的数据库命令
db
MongoDB中默认的数据库为test,如果你没有选择数据库,集合将存放在test数据库中。
另外:
数据库名可以是满足一下条件的任意utf8字符串
- 不能是空字符串("")。
- 不得含有 '' (空格) , $ / \ \0(空字符)
- 应全部小写
- 最多64字节
有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库。
- admin:从权限的角度来看,这是“root”数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有数据库或者关闭服务器。
- local:这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合。
- config:当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。
删除数据库,主要用来删除已经持久化的数据库
db.dropDatabase()
集合操作
集合,类似关系型数据库中的表。有两种创建形式。
集合的显示创建(了解)
db.createCollection(name)
参数说明:
- name:要创建的集合名称
查看当前库中的表:
show collection
或
show tables
隐式创建集合(常用),当向一个集合中插入一个文档的时候,如果集合不存在,则会自动创建集合。
删除集合:
db.collection.drop()
或
db.集合.drop()
若果成功删除选定集合,则drop()方法返回true,否则返回false。
文档基本CRUD
文档(document)的数据结构和JSON基本一样。所有存储在集合中的数据都是BSON格式。
插入文档:
- 插入单个文档
使用insert()或save()方法向集合中插入文档
db.collection.insert(
<document or array of documents>,
{
writeConcern: <document>,
ordered: <boolean>
}
)
参数说明
Parameter | Type | Description |
---|---|---|
document | document or array | 要插入到集合中的文档或者文档数组。(json格式) |
writeConcern | document | |
ordered | boolean | 可选,如果为真,则按顺序插入数组中的文档,如果其中一个文档出现错误,MongoDB将返回而不处理数组中的其余文档,如果为假,则执行无序插入,如果其中一个文档出现错误,则继续处理数组中的主文档。在版本2.6+中默认为true |
提示:
1)comment集合如果不存在,则会隐式创建。
2)mongo中的数据,默认情况是double类型,如果要存整形,必须使用函数NumberInt(整形数字)
,否则取出来就有问题了。
3)插入当前日期使用new Date()
。
4)插入的数据没有指定_id
,会自动生成主键值。
5)如果某字段没值,可以赋值为null,或不写该字段。
执行后,如下,说明插入一个数据成功了。
WriteResult({ "nInserted" : 1 })
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!