MongoDB客户端shell基本操作

本文介绍了MongoDB的基本概念,包括其作为NoSQL数据库的特点和优势。详细解释了如何使用MongoDB自带的shell客户端进行数据库管理和数据操作,涵盖了数据库创建、集合操作、文档增删改查等实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MongoDB 是一款NoSql数据库,没有固定的模式,即同一个集合中的不同文档结构可以不同,如:第一条记录{name:”xiaoming”},第二条记录:{name:”xiaoli”,age:15},这在关系型数据库中是无法实现的。对于MongoDB,其中:collections即集合相当于关系型数据库的表,document文档相当于关系型数据库中的行。因此也就是说,MongoDB中的表中存储的数据可以不规定类型等。下面看一下MongoDB自带shell客户端的一些基本操作。
先来看一下,如何打开客户端shell。
如果将MongoDB配置进系统的环境变量,则直接在命令行输入即可:

mongo

若没有配置环境变量,则需要在对应目录中执行命令,如我本机装在D:\MongoDB,则在命令行输入下面命令即可:

D:\MongoDB\Server\3.0\bin\mongo

出现如下图,则正常启动,并连接test数据库:

MongoDB客户端连接成功
下面来看一些简单的shell操作。

shell基本操作

  • 查看所有的数据库
show dbs

如图:查看所有数据库show dbs

  • 创建一个数据库
use [database] (注:此时若不做其他操作直接退出,则MongoDB会删除该数据库)

如图:创建数据库

  • 给指定数据库添加集合并添加文档记录
db.[collectionName].insert({...})

其中:db代表当前数据库
例如:向sample数据库中添加集合sample并插入文档记录{name:”sample1”}:

db.sample.insert({name:"sample1"})

如图:添加集合插入文档记录

  • 查看数据库中所有的集合collection
show collections

如图:
查看所有collections
从图中可以看出,我们添加了一个集合,插入了一条记录,数据库却有2个集合,通过查看内容,可以看出,system.indexes集合是为了sample集合添加主键_id和索引等,而sample集合是真正我们添加的集合。

  • 查询指定集合的数据
db.[collection].find()  --查询全部文档记录
db.[collection].findOne()   --查询第一条文档记录

这里,我们再插入几条文档记录到sample集合中,查询所有:

db.sample.find()

结果如图:
查询全部文档
查询第一条文档:

db.sample.findOne()

结果如图:
查询一条文档记录

  • 更新文档数据
db.[collection].update({查询条件},{$set:{更新内容}})

例如:

db.sample.update({name:"sample3"},{$set:{name:"samplenew"}})

这里$set相当于一个设置器,更新器的存在,更新及查询结果如下图:
更新文档数据

  • 删除集合中的数据
db.[collection].remove({删除条件})

如:

 db.sample.remove({age:25})

删除结果如图:
删除文档数据

  • 删除数据库中的集合
db.[collection].drop()

我们来删除sample集合:

db.sample.drop()

删除集合

  • 删除数据库
db.dropDatabase()

删除数据

MongoDB的客户端shell基本操作就介绍这些,更多的命令可以查看MongoDB官方文档或者shell的help。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值