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脚本
Apr 05 Python
python实现list元素按关键字相加减的方法示例
Jun 09 Python
详谈Python高阶函数与函数装饰器(推荐)
Sep 30 Python
Python实现针对给定单链表删除指定节点的方法
Apr 12 Python
Python3.6笔记之将程序运行结果输出到文件的方法
Apr 22 Python
python计算日期之间的放假日期
Jun 05 Python
Python控制键盘鼠标pynput的详细用法
Jan 28 Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
Jan 30 Python
numpy.where() 用法详解
May 27 Python
Python Django路径配置实现过程解析
Nov 05 Python
用python批量下载apk
Dec 29 Python
python单向链表实例详解
May 25 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中Y2K38的漏洞解决方法实例分析
2014/09/22 PHP
php自定义错误处理用法实例
2015/03/20 PHP
详解php的socket通信
2015/08/11 PHP
jQuery UI 应用不同Theme的办法
2010/09/12 Javascript
JS 使用for循环遍历子节点查找元素
2014/09/06 Javascript
jQuery遍历json中多个map的方法
2015/02/12 Javascript
使用AngularJS和PHP的Laravel实现单页评论的方法
2015/06/19 Javascript
WordPress中利用AJAX技术进行评论提交的实现示例
2016/01/12 Javascript
Jquery实现简单的轮播效果(代码管用)
2016/03/14 Javascript
jquery选择器中的空格与大于号>、加号+与波浪号~的区别介绍
2016/06/24 Javascript
javascript输出AscII码扩展集中的字符方法
2016/12/26 Javascript
JS实现留言板功能
2017/06/17 Javascript
jQuery实现QQ空间汉字转拼音功能示例
2017/07/10 jQuery
vue中的模态对话框组件实现过程
2018/05/01 Javascript
vue中子组件传递数据给父组件的讲解
2019/01/27 Javascript
微信小程序picker组件关于objectArray数据类型的绑定方法
2019/03/13 Javascript
BootStrap前端框架使用方法详解
2020/02/26 Javascript
[01:13]DOTA2群星解读国服召集令 一起说出回归的理由
2013/07/17 DOTA
[30:00]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第二场 11.28
2020/12/01 DOTA
Python实现判断一行代码是否为注释的方法
2018/05/23 Python
Python自定义一个类实现字典dict功能的方法
2019/01/19 Python
关于python中的xpath解析定位
2020/03/06 Python
解决Jupyter NoteBook输出的图表太小看不清问题
2020/04/16 Python
使用Python实现微信拍一拍功能的思路代码
2020/07/09 Python
HTML利用九宫格原理进行网页布局
2020/03/13 HTML / CSS
中药专业大学生医药工作求职信
2013/10/25 职场文书
教师师德教育的自我评价
2013/10/31 职场文书
爷爷追悼会答谢词
2014/01/24 职场文书
烹调加工管理制度
2014/02/04 职场文书
如何写自我鉴定
2014/03/19 职场文书
学习实践科学发展观心得体会
2014/09/10 职场文书
关于群众路线的心得体会
2014/11/05 职场文书
清洁工个人总结
2015/03/04 职场文书
2015年幼儿园学期工作总结
2015/05/22 职场文书
Pytorch数据读取之Dataset和DataLoader知识总结
2021/05/23 Python
Oracle中DBLink的详细介绍
2022/04/29 Oracle