• python 操作mongoDB数据库


    网上关于python 操作mongoDB的相关文章相对不是很多,并且质量也不是很高!下面给出一个完整的 增删改查示例程序!

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    import pymongo
    import re
    
    connection = pymongo.MongoClient('10.38.164.80',27017)
    tdb = connection.test
    collection = tdb.article
    
    #插入数据
    try:
        insert_data={"id":"2","value":"abc"}
        collection.insert(insert_data)
    except BaseException:
        print "插入异常"
    
    #查询数据
    try:
        print collection.find_one({"id":"2"})
        cursor =  collection.find({"title":re.compile("^.{0,50}(女神)")},{"title":1,"url":1})
        for result in cursor:
            print type(result)  #查看类型
            print str(result).decode("unicode-escape")
            print result.get("title")
            #print str(result).decode('unicode_escape')
    except BaseException,e:
        print "查询数据异常" + str(e)
    
    #修改数据
    try:
        collection.update({"id":"2"},{"$set":{"value":"123"}})
    except BaseException,e:
        print "更新数据失败"
        print e
    
    #删除数据
    try:
        collection.remove({"id":"2"})
    except BaseException,e:
        print "删除数据异常"
        print e

    工具类(面向对象,使用更方便)

    # -*- coding: utf-8 -*-
    import pymongo
    import re
    
    class MongoUtil:
        def __init__(self,host,port):
            self.host=host
            self.port=port
            self.mongoClient=pymongo.MongoClient(host,port)
    
        def insert(self,dbName,collectionName,data):
            db=self.mongoClient.get_database(dbName)
            collection=db.get_collection(collectionName)
            collection.insert(data)
    
        def query(self,dbName,collectionName,queryObj,fieldObj):
            db = self.mongoClient.get_database(dbName)
            collection = db.get_collection(collectionName)
            if fieldObj.__eq__({}):
                return collection.find(queryObj)
            else:
                return collection.find(queryObj,fieldObj)
    
        def update(self,dbName,collectionName,queryObj,newInfo):
            db = self.mongoClient.get_database(dbName)
            collection = db.get_collection(collectionName)
            collection.update(queryObj,newInfo)
    
        def delete(self,dbName,collectionName,queryObj):
            db = self.mongoClient.get_database(dbName)
            collection = db.get_collection(collectionName)
            collection.delete_many(queryObj)
    
    
    mongoClient = MongoUtil("10.38.164.80",27017)
    #增加数据
    try:
        mongoClient.insert("test","article",{"id":3,"value":"abcde"})
    except BaseException,e:
        print e
    #查询数据
    cursor = mongoClient.query("test","article",{"title":re.compile(".{0,50}(明星)")},{"title":1})
    for result in cursor:
        print str(result).decode("unicode-escape")
    
    #修改数据
    mongoClient.update("test","article",{"id":3},{"$set":{"value":"12345"}})
    
    #删除数据
    mongoClient.delete("test","article",{"id":3})
    View Code

    需要安装mongo库,安装命令如下(ubuntu):pip install pymongo

  • 相关阅读:
    web通信浅析(上B/S交互)转载
    tomcat内部运行原理浅析转载
    oracle集合运算
    Oracle 游标使用全解
    oracle 一些基本概念
    1.搭建项目环境之TestDirector 8.0
    修改Win7远程桌面端口
    从第二份工作开始
    2.搭建项目环境之源代码管理SVN
    How to Get IIS Web Sites Information Programmatically
  • 原文地址:https://www.cnblogs.com/tengpan-cn/p/6825942.html
Copyright © 2020-2023  润新知