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" })