mongodb和python交互

import pymongo

創(chuàng)建數(shù)據(jù)庫(kù)連接
"""
host=None :ip 127.0.0.1
port=None 端口 27017
"""
mongo_client = pymongo.MongoClient(
host='127.0.0.1',
port=27017
)
mongo_client = pymongo.MongoClient(
'mongodb://127.0.0.1:217017/'
)

需要賬號(hào)密碼登錄

mongo_client = pymongo.MongoClient(
'mongodb://username:password@ip:port'
)

選擇數(shù)據(jù)庫(kù)

db = mongo_client['mongotest']
db = mongo_client.mongotest

選擇數(shù)據(jù)庫(kù)下的集合

col_name = db['test']

插入數(shù)據(jù)

def insert_data():
document1 = {
'title':'斯巴達(dá)克斯3',
'actor':'未知',
'type':'動(dòng)作',
'info':'古羅馬傳記',
}
document2 = {
'title': '斯巴達(dá)克斯4',
'actor': '未知',
'type': '動(dòng)作',
'info': '古羅馬傳記',
}
result = col_name.insert([document1,document2])
result = col_name.insert_many([document1,document2])
print(result)

def delete_data():

# multi = False:刪除一條,multi = True:刪除多條

 result = col_name.remove({'title':'斯巴達(dá)克斯'},multi=False)
 print(result)

 result = col_name.delete_one({'title':'斯巴達(dá)克斯'})
 print(result.deleted_count)

result = col_name.delete_many({'title': '斯巴達(dá)克斯2'})
print(result.deleted_count)
from bson import ObjectId
def update_data():
"""

:return:
"""#upsert=False:表示如果要更新的文檔不在集合下,則什么都不做,
upsert = ture:
result = col_name.update(
    {'title':'斯巴達(dá)克斯1'},
    {'$set':{'info':'1712b'}},
)
 print(result)
 col_name.update(
     {'title':'斯巴達(dá)克斯3'},
   {'name':'小米','gender':'女','age':18}
)
 col_name.update(
     {'name': '小米'},
     {'$set':{'age':20,'class':'1712b'}}
 )

save方法可以保存也可以更新數(shù)據(jù),如果ID不存在,則插入一條新數(shù)據(jù)。

result = col_name.save(
    {
        '_id':   ObjectId("5c26011b0a7f0a2b00f9041a"),
        'title':' this is a girl',
        'info':'1712b',
        'age':30,
        'name':'麗麗'
     }
)
print(result )

def find_data():
"""
查找
:return:
"""
result = col_name.find({})
print(result)
print([i for i in result ])
#根據(jù)條件查找所有
result = col_name.find({'name':'麗麗'})
print([i for i in result])
result = col_name.find_one({'name':'麗麗'})
print(result)
result = col_name.find({}).skip(2).limit(3).sort('age',1)
for i in result:
print(i)

result = col_name.find({}).skip(2).limit(3).sort('age',1)
for i in result:
    print(i)
#limit:限制
#skip:跳過
#sort:排序

if name == 'main':
insert_data()
delete_data()
update_data()
find_data()

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • mongodb與python的交互 pip3 intsall pymongo import pymongofrom...
    恬恬i阿萌妹O_o閱讀 375評(píng)論 0 0
  • 一、MongoDB簡(jiǎn)介 1.概述 ? MongoDB是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù),由C++語(yǔ)言編寫。旨在為WE...
    鄭元吉閱讀 1,130評(píng)論 0 2
  • 1、shard表查詢必須帶shardingkey 2、explain select * from table wh...
    bettermeLy閱讀 226評(píng)論 0 0
  • 絲柏+天竺葵+葡萄柚+椰子油,晚上用能瘦臉 用輕盈、絲柏、柚皮各25滴加在整瓶椰子油里,刷經(jīng)絡(luò)瘦身
    Wonders全美原版課堂閱讀 169評(píng)論 0 0

友情鏈接更多精彩內(nèi)容