mongodb是一个nosql数据库,无结构化、和去中心化。
python是一门优雅而且健壮的语言。
python使用mongo,也被很多场景中会用到,幕客最近在作一个后台系统,其中:
日志的记录,用户分析就用到了mongo这个数据库来作。
那为什么要用mongo来存呢?
首先、数据关系复杂,没有表连接,结构化弱。
然后、利用mongo全文索引查找方便
最好、数据不重要,记录的日志数据库。意外丢失风险可以接受。
说了这么多,接下来幕客先给大家说说对mongo的CURD,如下:
一、安装mongo的支持
sudo /opt/python2.7.13/bin/pip install pymongo
二、简单操作
1) 数据库实例创建
In [1]: import pymongo
In [2]: pymongo.MongoClient('192.168.8.237',27017)
Out[2]: MongoClient(host=['192.168.8.237:27017'], document_class=dict, tz_aware=False, connect=True)
In [3]: mgc = pymongo.MongoClient('192.168.8.237',27017)
2)插入数据
In [4]: db = mgc['iops']
In [10]: col.insert_one(content)
Out[10]: <pymongo.results.InsertOneResult at 0x104907e60>
3)数据查找,确认插入成功
> db.logrecord.find()
{ "_id" : ObjectId("5a27b65dfa121a84df126d8c"), "status" : "success", "stepid" : 2, "stepinfo" : "ok! finished", "taskid" : 23432 }
4)直接通过python的对象获取内容
In [12]: col.find_one()
Out[12]:
{u'_id': ObjectId('5a27b65dfa121a84df126d8c'),
u'status': u'success',
u'stepid': 2,
u'stepinfo': u'ok! finished',
u'taskid': 23432}
(5) 通过查询条件查询
查询成功的内容
In [13]: col.find_one({'status':'success'})
Out[13]:
{u'_id': ObjectId('5a27b65dfa121a84df126d8c'),
u'status': u'success',
u'stepid': 2,
u'stepinfo': u'ok! finished',
u'taskid': 23432}
(6) 更新数据
col.update_one({"stepid":2},{"$set":{"stepid":3}})
(7) 获取所有的集合
相当于show tables获取集合操作
In [11]: db.collection_names()
Out[11]: [u'opts', u'logrecord']
课程介绍:https://coding.imooc.com/class/160.html
课程问答区:https://coding.imooc.com/learn/qa/160.html
点击查看更多内容
5人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦