mongodb中的小花样

1:创建数据库

我们先查看mongodb中有哪些数据库,如下图所示:

使用如下命令创建数据库,如下图所示:

再次查看所有的数据库,如下图所示:

从上图可以看出,我们创建的数据库并没有展示出来,为了让数据库展示出来,需要向数据库中插入一条数据,如下图所示:

此时再使用刚才的命令,新建的数据库就会展示出来,如下图所示:

2:删除数据库

使用以下命令查看当前在哪个数据库上,如下图所示:

可以看出我们当前所处的数据库就是刚才我们新建的数据库上,所以我们可以使用以下命令来删除刚才新建的数据库。如下图所示:

然后再查看数据库有没有被删除,如下图:

从图中可以看出,刚才我们新建的geek数据库已经被删除了。

3:删除集合(删除表),可以使用命令:db.collection.drop(),如下图所示:

从上图可以看出我们把表ruobi表已经删除。

4:创建集合(表)

 命令:db.createCollection(name,options),其中name是集合的名字,options会有以下选项:

命令

选项

capped如果为true,则为创建固定集合。固定集合是指有固定大小的集合,当达到最大值时,会覆盖最早的文档。当该选项设置为true,则必须设置size。
autoindexId如果为true,自动在_id项创建索引
size为固定集合设置一个最大值,以KB为单位。
max指定固定集合中最大文档的数量

上述的这些选项都是可选项,如下图所示:

从上图可以看出,我们对集合student设置对最大文档数是2,那我们如果设置第三条数据对时候,则第三条数据会插入成功,并且会替换到最早对文档;

    当然,创建集合也不一定要使用上述命令,可以直接向自己想创建的集合中插入数据,直接就创建了集合。如下图所示:

 

5:更新文档

db.collection.update(
   <query>,
   <update>,
   {
     upsert: <boolean>,
     multi: <boolean>,
     writeConcern: <document>
   })

其中query相当于sql中where后面的查询条件;update相当于sql中的set;upsert的意思是查询文档是否存在,如果文档存在,该参数设置为true则插入数据,参数为false,则不会插入数据;multi是是否更新多条数据,true,把符合条件的文档都更新,如果是false则只更新一条;writeConcern可选参数,指抛出异常的等级。

从上图可以看出我们更新了整条数据,如果我们想更新某个字段可以使用如下图的方法:

从上图可以看出,我们更新了name等于steven的全部记录,使用了multi等于true,但是在使用multi的时候,第二个参数(也就是sql中的set)中必须使用$set,否则会报错。

还可以在update方法的第三个,第四个参数直接传递true or false来执行是否全部更新还是只更新一条。

从上述的这个命令可以在第三个参数传递true,如果在集合中没有符合第一个参数的文档,则会添加新的文档到集合中。

6:删除文档

db.collection.remove(
   <query>,
   <justOne>)

 

query是查询条件,justOne是否删除一条,ture是删除一条,false删除符合条件的全部,默认是false。

从上面的例子可以看出,justOne参数为true时,只删除一条数据,默认不填或者设置为false时,都会把符合条件的文档全部删除。

7:查询文档

db.collection.find(query, projection)

query是查询条件,projection是要显示的字段。如下图:

从上图第一个命令行可以看出,我们查询的是name等于steven的相关信息,会显示全部字段;第二个命令展示的是姓名等于steven的相关信息,但是只显示score字段内容;第三个命令展示的是姓名等于steven的相关信息,但是展示的是除score字段以外的其它字段。

使用and

>db.col.find({key1:value1, key2:value2}).pretty()还可以使用以下的命令

db.col.find({$and:[{key1 : value1, key2 : value2}]}).pretty()

or的用法和and的用法是一样的,下面我们列举一下and和or同时使用的情况,如下图所示:

以上就是mongodb简单的增删改查操作

如果想查看更多,更关注公众号:我要一幕天

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值