python连接mongodb操作数据示例(mongodb数据库配置类)
发布时间:2023-05-01 17:21:17
标签:python,mongodb
一、相关代码
数据库配置类 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读写及备份oracle数据库操作。分享给大家供大家参考,具体如下:最近项目中需要用到Python调用oracle实
- #!/usr/bin/env python#coding=utf-8import osfrom pyinotify import Watch
- 数学是优美的. 听上去有点奇怪? 当我第一次开始设计的时候,我确信如此。数学如此刻板乏味。你可能会惊讶的发现,最美观的设计,艺术作品,物体,
- 测试数据:坐标数据:testExcelData.xlsx使用python读取excel文件需要安装xlrd库:xlrd下载后的压缩文件:xl
- 一.ajax介绍1、ajax的含义Ajax全称“Async Javascript And XML”即:异步的javascript和XML。它
- 远程服务器配置可以使得数据库管理员在服务器以外的主机上连接到一个SQL Server实例,以便管理员在没有建立单据连接的情况下在其他的SQL
- python保存numpy数据:numpy.savetxt("result.txt", numpy_data);保存li
- 一.概述:Selenium是一个用于Web应用程序测试的工具,本文使用的是Selenium 2。Selenium就是一套类库,不依赖于任何测
- swoole —— 重新定义PHPswoole 的进程之间有两种通信方式,一种是消息队列(queue),另一种是管道(pipe),对swoo
- 前言想要使用摄像头实现一个多人姿态识别环境安装下载并安装 Anaconda官网连接 https://anaconda.cloud/insta
- 在 Python 中一切都是对象。如果要在 Python 中表示一个对象,除了定义 class 外还有哪些方式
- 第一步:首先进入python安装目录下的 【scripts】.第二步:执行安装pyqt5的命令:python37 -m pip instal
- 由于opencv读入图片数据类型是uint8类型,直接加减会导致数据溢出现象(1)用Numpy操作可以先将图片数据类型转换成int类型进行计
- 在pycharm使用过程中,对于每次新建的python文件的时候,关于代码编写者的一些个人信息快捷填写,使用模板的方式比较方便。方法如下:1
- 涉及概念并发安全Map分段锁sync.MapCAS ( Compare And Swap )双检查分断锁type SimpleCache s
- 因为最近要经常转换数据集进行实验,因此记录一下。1、视频转图片即为将视频解析为一帧一帧的图片:import cv2vc=cv2.VideoC
- 本文实例讲述了Python中列表与元组的乘法操作。分享给大家供大家参考,具体如下:直接上code吧,还可以这么玩儿列表乘法:li=[1,]l
- 1.展开服务器对象-->链接服务器-->右击"新建链接服务器"注意:必须以数据库管理员身份登录(通常也就是s
- 前言本文主要基于在Uber的Go monorepo中发现的各种数据竞争模式,分析了其背后的原因与分类,希望能够帮助更多的Go开发人员,去关注
- 使用python生成一个图片验证码,随机的,可以由于验证人机和别的啊,很方便很简单导入模块import randomfrom PIL imp