首页 > 代码库 > MongooooooooooooooooooooDB入门三:MongoDB shell
MongooooooooooooooooooooDB入门三:MongoDB shell
MongoDB shell是什么?
MongDB shell是一个功能完备的Javascript解释器,可以运行Javascript程序。
但shell的作用远不止于此,它主要还是用于连接MongoDB服务器,执行脚本,对数据库进行操作。类似于SQL Server的管理工具SSMS。
可以通过以下2条命令打开shell控制台:
> cd C:\Program Files\MongoDB 2.6 Standard\bin> mongo
如图所示:
C:\Program Files\MongoDB 2.6 Standard 是MongoDB的安装目录。
在打开shell控制台之前请确保MongoDB服务已启动,如何启动MongoDB可以参考MongoDB入门一:安装与配置。
MongoDB shell基本操作
1.添加
> db.blog.insert({"title":"aaa","content":"123","date":new Date()})
添加一条数据使用insert方法,MongoDB会隐式地创建集合blog。如果添加的文档比较复杂,也可以先声明再添加,例如:
> post = {"title":"aaa", "content":"123", "author":"Ming Li", "summary":"This article focuses on Asp.net MVC.", "date":new Date()}> db.blog.insert(post)
2.查询
不带参数的find方法会返回集合里面所有的文档,shell只显示20条。若只是想查看一条数据可以使用findOne方法,不带参数的findOne会返回当前集合中的第一条数据。
> db.blog.find()> db.blog.findOne()
如果想查询集合blog中title为"aaa"的文档,可以给find添加参数:
> db.blog.find({"title":"aaa"})
如果只能进行这样的查询估计很多人会疯掉,事实上MongoDB的查询还是很强大的,需要单独介绍,这里只需要有个初步认识。
3.修改
修改使用update方法,update是一个至少有2个参数的方法。
假如集合book下有如下文档:
{"_id":11,"item":"长安乱","publisher":"春风文艺出版社","author":"韩寒","price":20}
要修改书的价格为19可以使用下面的命令:
> db.book.update({"_id":11},{"price":19})
如果想给它增加属性呢?假如我要使价格提高10,并且增加一个stock属性,其值为5,可以使用下面的命令:
> db.book.update( {"_id":11}, { $.set:{stock:5}, $.inc:{price:10} } )
修改之后的文档就是这样了:
{"_id":11,"item":"长安乱","publisher":"春风文艺出版社","author":"韩寒","price":29,"stock":5}
关于修改有很多内容可以讲,这篇文章主要还是介绍MongoDB的基本操作有哪些,我会在后续文章详细介绍update方法。
4.删除
remove用来从数据库中永久性地删除文档。在不使用任何参数的情况下,它会删除集合内的所有文档。它也可以接受一个文档类型的参数以限定条件。
例如下面的命令会删除blog中title为aaa的文档:
> db.blog.remove({"title":"aaa"})
shell的其他常用命令
1.查看db下的所有命令或方法
> db.help()
2.切换到数据库test,如果test不存在会自动创建
> use test
3.删除当前连接的数据库
> db.dropDatabase() //请谨慎操作
4.查询本地所有数据库名称
> show dbs
5.查询当前数据库下的所有集合
show collections
6.查询当前集合下的文档个数
db.collection.count() //示例:db.blog.count()