Python操作MongoDB数据库

Python实现MongoDB数据库的增删改查

直接上代码

from pymongo import MongoClient
from datetime import datetime
from bson.objectid import ObjectId

class TestMongo(object):

    def __init__(self):
        self.client = MongoClient()
        self.db = self.client['blog']#数据库名称,这里要求已经新建好了数据库

    def add_one(self):
        '''新增数据'''
        post = {
        'title':'新新的标题',
        'x':110,
        'content':'博客内容,...',
        'created_at':datetime.now()
        }
        return self.db.blog.test.insert_one(post)#blog.test是数据库中的集合名称

    def get_one(self):
        '''查询一条数据'''
        return self.db.blog.find_one()

    def get_more(self):
        '''查询多条数据'''
        return self.db.blog.find()#可以加条件


    def get_from_oid(self,oid):
        '''根据记录的ID来获取数据'''
        obj = ObjectId(oid)
        return self.db.blog.find_one({'_id':obj})

    def update(self):
        '''修改数据'''
        # 修改一条数据
        rest = self.db.blog.update_one({'x':14},{'$inc':{'x':10}})
        #return rest
        # 修改多条数据
        return self.db.blog.update_many({},{'$inc':{'x':8}})

    def delete(self):
        '''删除数据'''
        #删除一条数据
        #return self.db.blog.delete_one({'x':53})
        #删除多条数据
        return self.db.blog.delete_many({'x':56})

def main():
    obj = TestMongo()

    rest = obj.add_one()
    #rest1 = obj.get_one()
    #rest2 = obj.get_more()
    print(rest)
    '''
    for item in rest2:
        print(item["_id"])
        '''
    
    #rest3 = obj.get_from_oid('5a9a638f11e67a4c5cad7331')
    #print(rest3)
    
    #rest4 = obj.update()
    #print(rest4.matched_count)
    #print(rest4.modified_count)

    rest5 = obj.delete()
    print(rest5.deleted_count)

if __name__ == '__main__':
    main()
人生苦短,何不用python
原文地址:https://www.cnblogs.com/yqpy/p/8496791.html