Operacionet MongoDB CRUD me Python(Pymongo)

PyMongo është një shpërndarje Python që përmban mjete për të punuar me MongoDB, kështu që në këtë postim në blog le të shohim disa metoda bazë që kryejnë operacione CRUD në një koleksion. insert_one(), insert_many(), find_one(), find(), update(), delete(), ...

Unë, Lidhu dhe Krijo Baza e të Dhënave

import pymongo  
  
myclient = pymongo.MongoClient("mongodb://localhost:27017/")  
mydb = myclient["mydatabase"]  
mycol = mydb["mytable"]

II, Krijo, Shkruaj

1, fut()

mund të përdoret për të futur 1 ose më shumë regjistrime.

myclient = pymongo.MongoClient("mongodb://localhost:27017/")  
mydb = myclient["mydatabase"]  
mycol = mydb["users"]  
  
# insert single user  
mycol.insert({ "username": "aaa", "pass": "123456" })  
  
# insert many users  
mycol.insert([{ "username": "bbb", "pass": "123456" }, { "username": "ccc", "pass": "123456" }])

Metoda insert() kthehet

# insert single user  
ObjectId('5fbe1c17242098c02a7f4ecb')  
  
# insert many users  
[ObjectId('5fbe1c17242098c02a7f4ecb'), ObjectId('5fbe1c63fa9741631f6a1f6c')]

2, insert_one()

fut një rekord të vetëm në një DB

mycol.insert_one({ "username": "aaa", "pass": "123456" })

3, insert_shumë()

fut rekord të shumëfishtë në një koleksion

mycol.insert_many([  
    { "username": "aaa", "pass": "123456" },  
    { "username": "bbb", "pass": "123456" },  
    { "username": "ccc", "pass": "123456" }  
])

III, Përditësim

1, përditësimi()

myquery = { "username": "aaa" }  
newvalues = { "$set": { "username": "ddd" } }  
  
mycol.update(myquery, newvalues)

2, update_one()

myquery = { "username": "aaa" }  
newvalues = { "$set": { "username": "ddd" } }  
  
mycol.update_one(myquery, newvalues)

3, update_shumë()

myquery = { "username": "aaa" }  
newvalues = { "$set": { "username": "ddd" } }  
  
mycol.update_many(myquery, newvalues)

4, zëvendëso_një()

myquery = { "username": "aaa" }  
newvalues = { "username": "ddd" }  
  
mycol.replace_one(myquery, newvalues)

IV, Zgjidh të dhënat, Lexo, Gjej, Kërko, Rendit

1, gjeni()

kthen të gjitha të dhënat

mycol.find()  
# return  
<pymongo.cursor.Cursor object at 0x7f8fc1878890>

2, find_one()

ktheni rekordin e parë

mycol.find_one()  
  
# return   
{'id': ObjectId('5fbe1c17242098c02a7f4ecb'), 'username': 'aaa',  'pass': '123456'}

3, filtër

myquery = { "username": "aaa" }   
mydoc = mycol.find(myquery)  
  
for x in mydoc:  
  print(x)

gjeni të gjitha regjistrimet, emri i përdoruesit të të cilëve fillon me 'a'

myquery = { "username": { "$gt": "a" } }  
mydoc = mycol.find(myquery)  
  
for x in mydoc:  
  print(x)

4, Rendit

ASC

mydoc = mycol.find().sort("username", 1)

DESC

mydoc = mycol.find().sort("username", -1)

5, limit

users = mycol.find().limit(5)

V, Fshij

1, delete_one()

mycol.delete_one({ "username": "aaa" })

2, delete_many()

mycol.delete_many({ "username": "aaa" })