python连接mongodb操作数据示例(mongodb数据库配置类)


Posted in Python onDecember 31, 2013

一、相关代码
数据库配置类 MongoDBConn.py

#encoding=utf-8
'''Mongo Conn连接类
'''
import pymongo
class DBConn:
    conn = None
    servers = "mongodb://localhost:27017"
    def connect(self):
        self.conn = pymongo.Connection(self.servers)
    def close(self):
        return self.conn.disconnect()
    def getConn(self):
        return self.conn

MongoDemo.py 类

#encoding=utf-8
'''Mongo操作Demo
Done:
'''
import MongoDBConn
dbconn = MongoDBConn.DBConn()
conn = None
lifeba_users = None
def process():
    #建立连接
    dbconn.connect()
    global conn
    conn = dbconn.getConn()
    #列出server_info信息
    print conn.server_info()
    #列出全部数据库
    databases = conn.database_names()
    print databases
    #删除库和表
    dropTable()
    #添加数据库lifeba及表(collections)users
    createTable()
    #插入数据
    insertDatas()
    #更新数据
    updateData()
    #查询数据
    queryData()
    #删除数据
    deleteData()
    #释放连接
    dbconn.close()
def insertDatas():
    datas=[{"name":"steven1","realname":"测试1","age":25},
           {"name":"steven2","realname":"测试2","age":26},
           {"name":"steven1","realname":"测试3","age":23}]
    lifeba_users.insert(datas)
def updateData():
    '''只修改最后一条匹配到的数据
           第3个参数设置为True,没找到该数据就添加一条
           第4个参数设置为True,有多条记录就不更新
    '''
    lifeba_users.update({'name':'steven1'},{'$set':{'realname':'测试1修改'}}, False,False)
def deleteData():
    lifeba_users.remove({'name':'steven1'})
def queryData():
    #查询全部数据
    rows = lifeba_users.find()
    printResult(rows)
    #查询一个数据
    print lifeba_users.find_one()
    #带条件查询
    printResult(lifeba_users.find({'name':'steven2'}))
    printResult(lifeba_users.find({'name':{'$gt':25}}))
def createTable():
    '''创建库和表'''
    global lifeba_users
    lifeba_users = conn.lifeba.users
def dropTable():
    '''删除表'''
    global conn
    conn.drop_database("lifeba")
def printResult(rows):
    for row in rows:
        for key in row.keys():#遍历字典
            print row[key], #加, 不换行打印
        print ''
if __name__ == '__main__':
    process()
Python 相关文章推荐
Python操作列表的常用方法分享
Feb 13 Python
解决Python一行输出不显示的问题
Dec 03 Python
python实现随机漫步方法和原理
Jun 10 Python
python logging模块的使用总结
Jul 09 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
用Cython加速Python到“起飞”(推荐)
Aug 01 Python
Python 装饰器原理、定义与用法详解
Dec 07 Python
解决Python spyder显示不全df列和行的问题
Apr 20 Python
浅谈Python中的继承
Jun 19 Python
pytorch学习教程之自定义数据集
Nov 10 Python
opencv python 对指针仪表读数识别的两种方式
Jan 14 Python
python自动化调用百度api解决验证码
Apr 13 Python
python连接mysql数据库示例(做增删改操作)
Dec 31 #Python
Python抓取Discuz!用户名脚本代码
Dec 30 #Python
python之模拟鼠标键盘动作具体实现
Dec 30 #Python
python多线程http下载实现示例
Dec 30 #Python
python正则匹配查询港澳通行证办理进度示例分享
Dec 27 #Python
python模拟登录百度代码分享(获取百度贴吧等级)
Dec 27 #Python
python读文件逐行处理的示例代码分享
Dec 27 #Python
You might like
微信公众号开发之语音消息识别php代码
2016/08/08 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
JQUERY 对象与DOM对象之两者相互间的转换
2009/04/27 Javascript
基于JQuery 选择器使用说明介绍
2013/04/18 Javascript
根据表格中的某一列进行排序的javascript代码
2013/11/29 Javascript
JS 日期比较大小的简单实例
2014/01/13 Javascript
JS中产生标识符方式的演变
2015/06/12 Javascript
很棒的vue弹窗组件
2017/05/24 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
2018/11/21 Javascript
使用Webpack 搭建 Vue3 开发环境过程详解
2020/07/28 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
vue+axios 拦截器实现统一token的案例
2020/09/11 Javascript
JS实现炫酷轮播图
2020/11/15 Javascript
用Python实现一个简单的能够上传下载的HTTP服务器
2015/05/05 Python
python 3.5下xadmin的使用及修复源码bug
2017/05/10 Python
python将unicode转为str的方法
2017/06/21 Python
Python连接phoenix的方法示例
2017/09/29 Python
通过Python 获取Android设备信息的轻量级框架
2017/12/18 Python
django在接受post请求时显示403forbidden实例解析
2018/01/25 Python
Python中的groupby分组功能的实例代码
2018/07/11 Python
Python程序包的构建和发布过程示例详解
2019/06/09 Python
Python 硬币兑换问题
2019/07/29 Python
pandas如何处理缺失值
2019/07/31 Python
python实现视频压缩功能
2020/12/18 Python
使用Python制作一个数据预处理小工具(多种操作一键完成)
2021/02/07 Python
html5如何及时更新缓存文件(js、css或图片)
2013/06/24 HTML / CSS
意大利火车票和铁路通行证专家:ItaliaRail
2019/01/22 全球购物
波兰最早的运动鞋精品店之一:Street Supply
2019/08/29 全球购物
先进工作者获奖感言
2014/02/08 职场文书
三峡人家导游词
2015/01/31 职场文书
龙门石窟导游词
2015/02/02 职场文书
校园广播站开场白
2015/06/01 职场文书
七年级英语教学反思
2016/02/15 职场文书
Python获取字典中某个key的value
2022/04/13 Python
Spring Boot 使用 Spring-Retry 进行重试框架
2022/04/24 Java/Android