使用python操作MongoDB:


1.安装pymongo:

        python不能直接操作MongoDB,而是通过pymongo插件来实现对数据库的操作的,所以第一步要做的就是安装pymongo插件,安装过程其实非常简单,直接在终端中输入一下指令:

[plain]  view plain  copy
  1. pip install pymongo  


2.python中使用pymongo:

[python]  view plain  copy
  1. #encoding:utf-8  
  2. from pymongo import MongoClient  
  3.   
  4. con = MongoClient('localhost'27017#连接到数据库  
  5. db = con.local                                        #获取数据库  
  6. collect = db.test                                     #获取数据库中的一个Collection  
  7.   
  8. abc={'name':'lzy'}      #创建一个key-value格式的数据  
  9. collect.insert(abc)     #将上面创建的数据存入数据库  

        con为创建一个连接,db为所连接数据库,也可写为:db=con['local'],collect为所连接的聚集,也可写为:collect=db['test']。

        上述代码完成了将一个key为name,value为lzy的的数据插入到local 数据库 集合 )中的test 文档(聚集) 中,可以在Robomongo中查看插入后的结果:

        

        那么,数据库的几个基本操作:增、删、改和查在python中通过pymongo的实现代码分别如下:

增:abc={'name':'lzy'}      #创建一个key-value格式的数据

       或者一次插入多个key-value:abc={'name':'lsh','age':2}
       collect.insert(abc)

删:abc={'name':'lzy'}
       collect.remove(abc)  #删除指定一条数据

       collect.remove()        #删除此文档的全部数据

改:p = {'name':'lzy'}
       a={'name':'ash'}

       collect.update( p,{"$set":a}) #将原来数据库的数据p替换为新的数据a

查:

        a.查询当前集合(假设以local为例)中所有文档的名称:db.collection_names()

        b.查询当前文档的名称:collect.name

        c.查询聚集的一条记录:collect.find_one()或者collect.find_one({'name':'lsh'}),假如不存在则返回None

        d.查询聚集的字段:collect.find_one({},{'name':1,'age':1})

        e.遍历聚集:

           for item in collect.find():

                item

          或者是:

          for item in collect.find():

                item['name'] #获取此key对应的value

        f.查询结果统计:collect.find().count()或者collect.find_one({'name':'lsh'}).count()

        g.查询结果排序:

           collect.find().sort('age')                                          #默认排序

           collect.find().sort('age',pymongo.ASCENDING)    #升序

           collect.find().sort('age',pymongo.DESCENDING)  #降序

          此外,查询结果还可以多列排序:

          collect.find().sort('age',pymongo.ASCENDING,'age',pymongo.DESCENDING)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值