mongoVUE对mongodb常用的基础操作
一、 连接mongodb服务端:
1、 双击mongoVUE,进入如下图所示界面:
2、 点击上图中的“+”,出现如下图,输入要连接的mongodb服务器的ip、端口、用户名、密码以及要连接的数据库等:
3、 信息填写完成后点击“test”,如果成功,则会弹出如下界面,之后点击“save”;如果不是如下界面,代表输入的信息有误,请检查确认后再试(如果服务端没有开启用户验证,就不需要输入用户名和密码):
4、 Save以后会出现如下界面,下次再打开的时候,如果还要连接这台mongodb,就不用再重复前两个步骤,点击“connnection”就会连接到mongodb服务器中:
5、 下图是connection成功以后可操作的mongoVUE界面,可以在左侧打开看到相关的db和collection:
二、 插入数据:
1、 如上图中显示,有alarm、mongoTest等集合,例如要向mongoTest集合中插入一条数据,先在mongoTest上右击,在如下弹出框中选择“insert/import Documents…”:
2、 在如下的弹出框中填写要插入的文档,文档是json格式,如“{“name”:”aaa”,”age”:1}”,然后点击“insert”,就插入了一条数据到mongoTest集合中,如图:
三、 查询数据:
1、 先向mongoTest中插入多条数据,例如要查询这个集合中的数据,就在mongoTest上右击,然后选择“find”:
2、 Find后会在右侧出现如下界面,如果是要查询mongoTest中的所有数据,可以在“{find}”后的输入框中输入“{}”,或者什么都不输,然后点击箭头所指的右上角的“find”按钮,就会查询出所有数据;注意右下角箭头所指的地方,代表查询条数,默认查询出50条,可以按需要修改。
3、 在出现的如下界面点击箭头所指的“table view”,数据就会以表格形式展示出来,如图:
4、 条件查询1:例如要查询name是aaa的数据,可以在”{find}”后的输入框中输入条件“{“name”:“aaa”}”,依然是json格式,点击右上角的find按钮后会看到下方查询出了这条数据,如图:
5、 条件查询2:同样的,如果是多条件,在“{“name”:“aaa”}”中多加上相应的key:value就可以了,例如要查询name是aaa,age是111的数据;但是需要注意对应的value的类型必须匹配,如果数据库中的不是字符串,那value就不能加引号,否则条件不匹配,就查不出来:
6、 条件查询3:使用操作符$gt、$lt等 查询数据($gt、$gte、$lt、$lte分别是>、>=、<、<=),例如要查询age在2到5之间的数据,就可以在“{find}”后的输入框中输入“{“age”:{“$gte”:2,“$lt”:5}}”,就可以查询出所有age在2和5之间的数据:
7、 条件查询4:限制查询条数,只需要更改limit的数值就可以,例如mongoTest中name为ccc的数据有多条,只是age不一样,分别是3、4、5、6,如果只需要查询出前两天,就可以把limit改为2:
8、 条件查询5:给查询结果排序,如下图1,可以看到不加任何条件时,查询出的数据age是无序的:
如果希望查询出的数据是按age的正序排列,就可以在“{sort}”后的输入框中输入排序条件”{“age”:1}”;若希望按age倒序排列,就可以输入”{“age”:-1}”:
9、 条件查询6:条件查询并排序,例如要查询name是ccc,并且age在2和5之间的数据,并且按age的倒序排列,就可以如下图输入:
四、 删除数据:
1、 在mongoTest上右击,选择“remove”:
2、 在如下弹出框中输入删除条件,例如要删除name为aaa的数据,就输入“{“name”:“aaa”}”,然后点击左下角箭头所指的remove:
3、 之后会出现如下弹出框,显示根据条件匹配了多少条文档,点击remove,就会删除所有匹配上一步所输条件的文档(记录):
五、 修改数据:
1、 在mongoTest上右击,选择“update”:
2、 Update后会出现如下界面,在左侧输入查询条件,用来匹配要修改的文档,例如要修改name为bbb的文档,就可以如图所示,输入“{“name”:“bbb”}”;右侧输入框要输入更改后需要出现的文档,图中输入”{“age”:5}”,那么修改后,就会把所有name为bbb的文档替换为”{“age”:5}”,update1只会修改匹配的第一条,updataall则会修改所有匹配到的文档:
修改前,可以看到有name为bbb的文档存在:
修改后可以看到,已经没有了name为bbb的文档,而是出现了新的只有age为5的文档:
3、 上边步骤中的修改,是把整个文档覆盖掉了,假如是想要修改某个字段,就要使用$set操作符;例如要把name为eee的数据中的age改为100,就可以在右侧输入框输入“{“$set”:{“age”:100}}”:
再次查询,可以看到name为eee的数据已经变成了:{“name”:”eee”,”name”:100}: