Python 专题二 python 使用 MongoDB

23 篇文章 5 订阅
3 篇文章 0 订阅

 参考文档

一.安装和启动Mongodb

apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
apt-get update
apt-get install mongodb-10gen
/etc/init.d/mongodb start
pip install pymongo
mongo

二.常用操作

show dbs:显示数据库列表 
show collections:显示当前数据库中的集合(类似关系数据库中的表) 
show users:显示用户
use <db name>:切换当前数据库,这和MS-SQL里面的意思一样 
use test_database 创建或使用数据库
db.createCollection("people")创建表
db;            查看当前使用的数据库
db.stats();        显示当前db状态
db.version();        当前db版本
db.getMongo();        查看当前db的链接机器地址
db.createCollection(“collName”, {size: 20, capped: 5, max: 100});创建一个聚集集合(table)
db.getCollection("account");得到指定名称的聚集集合(table)
db.getCollectionNames();得到当前db的所有聚集集合
db.addUser("name");添加一个用户
db.addUser("userName", "pwd123", true); 添加用户、设置密码、是否只读
db.userInfo.distinct("name");查询去掉后的当前聚集集合中的某列的重复数据,会过滤掉name中的相同数据
db.userInfo.find({"age": 22});查询age = 22的记录
db.userInfo.find({age: {$gt: 22}});查询age > 22的记录
db.userInfo.find().sort({age: 1}); 按照年龄升序:
db.userInfo.find().sort({age: -1});按照年龄降序:
db.userInfo.find({name: 'zhangsan', age: 22});查询name = zhangsan, age = 22的数据
db.userInfo.find().limit(5);查询前5条数据
db.userInfo.find({age: {$gte: 25}}).count();查询某个结果集的记录条数
db.users.save({name: ‘zhangsan’, age: 25, sex: true});修改、添加、删除集合数据
db.users.update({age: 25}, {$set: {name: 'changeName'}}, false, true);修改
db.users.remove({age: 132});删除
db.Account.remove();        全部删除 

三.python 操作

#!/usr/bin/env python
from pymongo import Connection

if __name__ == "__main__":
    con=Connection()
    db=con.test_database
    people=db.people

    people.insert({'name':'Mike','food':'cheese'})
    people.insert({'name':'John','food':'ham','location':'UK'})
    people.insert({'name':'michelle','food':'cheese'})

    peeps =people.find()
    print "INSERT & FIND TEST"
    for person in peeps:
        print person

    peeps =people.find({'food':'cheese'})
    print "FIND WITH DICT TEST"
    for person in peeps:
        print person

    peeps = people.find({'name':{'$regex':'.*[Mm]i.*'}})

    print 'REGEX TEST'
    for person in peeps:
        print person

    person=people.find_one({'food':'ham'})
    person['food']='eggs'
    people.save(person)

    print "UPDATE RECORD TEST"
    for person in people.find({'food':'eggs'}):
        print person

    for person in people.find():
        people.remove(person)




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值