با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش پایتون ، را دنبال می کنند. در قسمت قبلی به حذف اطلاعات در MongoDB پرداختیم ، در این جلسه قصد داریم به آموزش بروزرسانی اطلاعات در MongoDB در پایتون python و بروزرسانی چندین Document بپردازیم.
با استفاده از متد ()update_one می توانید یک Document را بروزرسانی یا update کنید.
اولین پارامتر تابع ()update_one یک شی کوئری است که مشخص می کند کدام document باید بروزرسانی شود.
اگر کوئری بیش از یک document را پیدا کند، تنها اولین document را بروزرسانی می کند.
دومین پارامتر مقدار جدید document را مشخص می کند.
در مثال زیر document با فیلد address مقدار “Valley 345” به مقدار “Canyon 123” تغییر می کند.:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": "Valley 345" } newvalues = { "$set": { "address": "Canyon 123" } } mycol.update_one(myquery, newvalues) #print "customers" after the update: for x in mycol.find(): print(x) |
خروجی:
C:\Users\My Name>python demo_mongodb_update_one.py {‘_id’: 1, ‘name’: ‘John’, ‘address’: ‘Highway37’} {‘_id’: 2, ‘name’: ‘Peter’, ‘address’: ‘Lowstreet 27’} {‘_id’: 3, ‘name’: ‘Amy’, ‘address’: ‘Apple st 652’} {‘_id’: 4, ‘name’: ‘Hannah’, ‘address’: ‘Mountain 21’} {‘_id’: 5, ‘name’: ‘Michael’, ‘address’: ‘Canyon 123’} {‘_id’: 6, ‘name’: ‘Sandy’, ‘address’: ‘Ocean blvd 2’} {‘_id’: 7, ‘name’: ‘Betty’, ‘address’: ‘Green Grass 1’} {‘_id’: 8, ‘name’: ‘Richard’, ‘address’: ‘Sky st 331’} {‘_id’: 9, ‘name’: ‘Susan’, ‘address’: ‘One way 98’} {‘_id’: 10, ‘name’: ‘Vicky’, ‘address’: ‘Yellow Garden 2’} {‘_id’: 11, ‘name’: ‘Ben’, ‘address’: ‘Park Lane 38’} {‘_id’: 12, ‘name’: ‘William’, ‘address’: ‘Central st 954’} {‘_id’: 13, ‘name’: ‘Chuck’, ‘address’: ‘Main Road 989’} {‘_id’: 14, ‘name’: ‘Viola’, ‘address’: ‘Sideway 1633’} |
document پنجم update شده است.
از تابع ()update_many برای بروزرسانی بیش از بک document استفاده می شود.
در مثال زیر تمام document هایی که مقدار فیلد address آن ها با “S” شروع می شوند، بروزرسانی شده اند:
1 2 3 4 5 6 7 8 9 10 11 12 | import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": { "$regex": "^S" } } newvalues = { "$set": { "name": "Minnie" } } x = mycol.update_many(myquery, newvalues) print(x.modified_count, "documents updated.") |
خروجی:
C:\Users\My Name>python demo_mongodb_update_many.py ۲ documents updated. |
جلسه بروزرسانی اطلاعات در MongoDB در پایتون python نیز به پایان رسید.
در جلسه بعد به آموزش محدود کردن نتایج در MongoDB در پایتون خواهیم پرداخت. با ما همراه باشید.
همچنین می توانید نظرات و سوالات خود را از طریق بخش نظرات سایت با ما در میان بگذارید.