「自动化实战」python对mongodb的CURD介绍

释放双眼,带上耳机,听听看~!

mongodb是一个nosql数据库,无结构化、和去中心化。

python是一门优雅而且健壮的语言。

python使用mongo,也被很多场景中会用到,幕客最近在作一个后台系统,其中:

日志的记录,用户分析就用到了mongo这个数据库来作。
「自动化实战」python对mongodb的CURD介绍
那为什么要用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']

「自动化实战」python对mongodb的CURD介绍
课程介绍:https://coding.imooc.com/class/160.html
课程问答区:https://coding.imooc.com/learn/qa/160.html

【转自慕课】https://www.imooc.com

Python

以index访问Tensor元素+ unpool TensorFlow代码

2022-3-3 14:46:39

Python

python基础,很详尽!!!(2)

2022-3-3 14:49:48

搜索