pymongo 的基本操作

连接和基本表操作

>>> import pymongo
>>> conn = pymongo.MongoReplicaSetClient('xxxx:27017', replicaSet='mongolog')  # 建立连接Mongo Instance
>>> db = conn.dbname  # 连接到数据库
>>> items = db.items  # 使用items 表
>>> items.insert({"ItemName": "Books", "qty": 3})   # 向Items 写入数据
ObjectId('54981a6f24a1dd06708d3e40')
>>> items.insert({"ItemName": "music", "Artist":"Jackson", "price": "5 USD"})
ObjectId('54981ab524a1dd06708d3e41')
>>> for item in items.find():  # 查询Items 所有结果
...     print(item)
...
{u'_id': ObjectId('54981a6f24a1dd06708d3e40'), u'ItemName': u'Books', u'qty': 3}
{u'price': u'5 USD', u'_id': ObjectId('54981ab524a1dd06708d3e41'), u'ItemName': u'music', u'Artist': u'Jackson'}
Update
>>> items.update({"ItemName": "Books"}, {"qty": 10, "Name": "The story"})     # 修改后整行记录为{"qty": 10, "Name": "The story"}
>>> items.insert({"ItemName": "Books", "qty": 3})
>>> items.update({"ItemName": "Books"}, {"$set":{"qty": 10, "Name": "The story"}})   # 修改后整行记录为{"ItemName": "Books", "qty": 10, "Name": "The story"}
>>> items.update({"ItemName": "ticket"}, {"$set": {"qty": 193}}, upsert=True)
>>> items.update({"ItemName": "ticket"},  {"$set": {"qty": 329}}, multi= True)

关于upsert, multi 参考 MongoDB: update 操作

Find
>>> optab.find({'c1': 'v1', 'c2': 'v2', 'c3': {'$gt': 100}})  # 不要忘记 '$'
>>> optab.find({..}, sort=[("col1", -1), ("col2", 1)])
>>> optab.find_one(sort=[('col1',-1)])   # 找出col1 最大的那一行
Command
>>> admindb.command('commandname', opt1='v1', opt2='v2')
>>> opts = {'fromhost': from_host, 'fromdb': from_db, 'todb': to_db, 'slaveOk': True}
>>> admindb.command('copydb', **opts)

转载于:https://www.cnblogs.com/zhfan/p/4179019.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值