python模块整理19-pyMongo

本文介绍了如何使用PyMongo库连接MongoDB服务器并进行基本的数据操作。内容涵盖安装配置、数据库连接、数据插入与查询、索引创建等关键步骤。

一、pyMongo
1、安装
非标准库需要安装
#easy_install pyMongo
2、连接
使用pymongo.connecttion.Connection类与MongoDB服务器连接
from pymongo Connection
db=Connection('localhost',27017).apachelog #这里创建连接和使用库写在一起来了
>>> connection=pymongo.Connection('localhost',27017) #创建连接
>>> db = connection.test_database #切换数据库
获取collection
>>> collection = db.test_collection
db和collection都是延时创建的,在添加Document时才真正创建
3、插入数据
对于python来说,mongo的每一个文档都是一个字典
db.test.insert({'a':[1,2,3]})
db.test.find_One()
文档添加,_id自动创建
>>> import datetime
>>> post = {"author": "Mike","text": "My first blog post!","tags": ["mongodb", "python", "pymongo"],"date": datetime.datetime.utcnow()}
>>> posts = db.posts
>>> posts.insert(post)
批量插入
>>> new_posts = [{"author": "Mike","text": "Another post!","tags": ["bulk", "insert"],"date": datetime.datetime(2009, 11, 12, 11, 14)},{"author": "Eliot","title": "MongoDB is fun","text": "and pretty easy too!","date": datetime.datetime(2009, 11, 10, 10, 45)}]
>>> posts.insert(new_posts)
多个文档组成列表插入
获取所有collection(相当于SQL的show tables)
>>> db.collection_names()
[u'posts', u'system.indexes']
4、查询
获取单个文档
>>> posts.find_one()
查询多个文档
>> for post in posts.find():
post
加条件的查询
>>> posts.find_one({"author": "Mike"})
高级查询
>>> posts.find({"date": {"$lt": d}}).sort("author")
统计数量
>>> posts.count()
3
5、更新数据
db.hourly.update({"hour":hour,"url":url},$inc:{"views":1},upsert=True)
5、创建索引
from pymongo import ASCENDING
db.hourly.create_index([("hour":ASCENDING),("url":ASCENDING)],uniqe=True)

转载于:https://www.cnblogs.com/diege/archive/2012/11/05/2755132.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值