python操作mongodb

微信扫一扫,分享到朋友圈

python操作mongodb

一、概要

参考: https://docs.mongodb.com/getting-started/python/client/

pymongo是python操作mongodb数据的第三方模块,官方推荐使用;

使用pymongo之前,首先安装pymongo模块,命令如下(使用pip安装):

pip install pymongo

说明:Linux的安装方式与Windows安装一样

二、操作实战

1、建立连接

from pymongo import MongoClient
client = MongoClient(host='192.168.1.120',port=27017)

2、获取数据库

2.1、获取所有数据库

db = client.list_databases()
for line in db:
    print(line)输出:{'empty': False, 'name': 'admin', 'sizeOnDisk': 143360.0}

{'empty': False, 'name': 'config', 'sizeOnDisk': 73728.0}

{'empty': False, 'name': 'db_liubao', 'sizeOnDisk': 73728.0}

{'empty': False, 'name': 'local', 'sizeOnDisk': 73728.0}

2.2、获取指定的数据库对象

db = client['db_liubao']#返回数据库对象
print(db)输出:Database(MongoClient(host=['192.168.1.120:27017'], document_class=dict, tz_aware=False, connect=True), 'db_liubao')
或
db = client.get_database(name='db_liubao'):返回数据库对象
print(db)输出:Database(MongoClient(host=['192.168.1.120:27017'], document_class=dict, tz_aware=False, connect=True), 'db_liubao')

3、获取集合collection(表)

说明:集合是属于某个数据库对象的,即获取某个数据库的集合

3.1、获取所有集合

tb = db.list_collection_names()#返回集合的列表
print(tb)输出:['tb_liubao']

3.2、获取指定的集合

tb = db.get_collection(name='tb_liubao')#返回集合对象
print(tb)输出:Collection(Database(MongoClient(host=['192.168.1.120:27017'], document_class=dict, tz_aware=False, connect=True), 'db_liubao'), 'tb_liubao')

4、创建集合

db.create_collection(name="tb_xiaoqin")#返回集合对象,如果集合存在则报错

5、删除数据库和集合

#删除数据库client.drop_database(name_or_database='db_liubao')删除集合db.drop_collection(name_or_collection='tb_xiaoqin')

6、插入文档

#只能插入一条数据,不能插入多条
tb.insert_one(document=doc)
tb.save(to_save=doc) #返回该条数据的_id#只能插入多条数据,不能插入单条
tb.insert_many(documents=doc)#既可以插入单条数据,也可以插入多条数据:推荐
doc = {"name":"liubao","age":26,"sex":"男"}
tb.insert(doc_or_docs=doc) #返回该条数据的_id

#插入列表中的多条数据
doc_mul = [{"name":"liubao","age":26,"sex":"男"},{"name":"xiaoqin","age":25}]
tb.insert(doc_or_docs=doc_mul) #返回插入所有数据的_id的一个列表

微信扫一扫,分享到朋友圈

python操作mongodb

Centering a CSS transform (scale)

上一篇

前端开发碎碎念

下一篇

你也可能喜欢

python操作mongodb

长按储存图像,分享给朋友