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 相关文章推荐
Python2.x和3.x下maketrans与translate函数使用上的不同
Apr 13 Python
深入浅析python定时杀进程
Jun 06 Python
python获取指定时间差的时间实例详解
Apr 11 Python
python实现聚类算法原理
Feb 12 Python
python 按照固定长度分割字符串的方法小结
Apr 30 Python
详解pandas的外部数据导入与常用方法
May 01 Python
使用django的objects.filter()方法匹配多个关键字的方法
Jul 18 Python
numpy求平均值的维度设定的例子
Aug 24 Python
python用requests实现http请求代码实例
Oct 31 Python
Python urllib.request对象案例解析
May 11 Python
Python常用扩展插件使用教程解析
Nov 02 Python
使用python如何删除同一文件夹下相似的图片
May 07 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 readfile()修改文件上传大小设置
2017/08/11 PHP
createElement动态创建HTML对象脚本代码
2008/11/24 Javascript
通过判断JavaScript的版本实现执行不同的代码
2010/05/11 Javascript
jquery 插件学习(三)
2012/08/06 Javascript
使用javascript做的一个随机点名程序
2014/02/13 Javascript
选择复选框按钮置灰否则按钮可用
2014/05/22 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
jquery UI Datepicker时间控件的使用及问题解决
2016/04/28 Javascript
简单实现Bootstrap标签页
2020/08/09 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
JavaScript正则表达式简单实用实例
2017/06/23 Javascript
浅谈关于axios和session的一些事
2017/07/13 Javascript
jQuery UI 实例讲解 - 日期选择器(Datepicker)
2017/09/18 jQuery
微信小程序实现无限滚动列表
2020/05/29 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
2020/03/12 Javascript
微信小程序自定义底部弹出框动画
2020/11/18 Javascript
python使用新浪微博api上传图片到微博示例
2014/01/10 Python
Python中用于返回绝对值的abs()方法
2015/05/14 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
Python Pivot table透视表使用方法解析
2020/09/11 Python
Kmeans均值聚类算法原理以及Python如何实现
2020/09/26 Python
纯CSS实现设置半个字符的样式
2014/07/03 HTML / CSS
css3选择器基本介绍
2014/12/15 HTML / CSS
HTML5拖拽功能实现的拼图游戏
2018/07/31 HTML / CSS
解析html5 canvas实现背景鼠标连线动态效果代码
2019/06/17 HTML / CSS
澳大利亚在线性感内衣商店:Fantasy Lingerie
2021/02/07 全球购物
网络技术支持面试题
2013/04/22 面试题
介绍一下Ruby中的对象,属性和方法
2012/07/11 面试题
统计岗位职责
2014/02/21 职场文书
小学生倡议书范文
2014/05/13 职场文书
员工培训协议书
2014/09/15 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
诚信教育主题班会
2015/08/13 职场文书
mysql死锁和分库分表问题详解
2021/04/16 MySQL
详细总结Python常见的安全问题
2021/05/21 Python
Django基础CBV装饰器和中间件
2022/03/22 Python