Python MongoDB chèn tài liệu
- Trang Trước MongoDB Tạo Tập
- Trang Tiếp Theo MongoDB Tìm
Tài liệu trong MongoDB tương tự như bản ghi trong cơ sở dữ liệu SQL.
chèn bộ sưu tập
Để chèn bản ghi hoặc tài liệu mà chúng ta gọi là vào bộ sưu tập trong MongoDB, chúng ta sử dụng insert_one()
phương pháp.
insert_one()
Tham số đầu tiên của phương pháp là từ điển chứa tên và giá trị của mỗi trường mà bạn muốn chèn tài liệu.
mô hình
Chèn bản ghi vào bộ sưu tập "customers":
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["cơ sở dữ liệu của tôi"] cột = mydb["khách hàng"] mydict = { "name": "Bill", "address": "Highway 37" } x = mycol.insert_one(mydict)
trả về trường _id
insert_one()
phương pháp trả về đối tượng InsertOneResult, đối tượng này có thuộc tính inserted_id
để lưu trữ ID của tài liệu được chèn.
mô hình
Chèn một bản ghi khác vào bộ sưu tập "customers" và trả về giá trị của trường _id:
mydict = { "name": "Peter", "address": "Lowstreet 27" } x = mycol.insert_one(mydict) print(x.inserted_id)
Nếu bạn không định nghĩa _id
lĩnh vực, thì MongoDB sẽ thêm cho bạn và cấp phát một ID duy nhất cho mỗi tài liệu.
Trong ví dụ trên, không có định nghĩa _id
lĩnh vực, vì vậy MongoDB đã cấp phát một _id duy nhất cho từng bản ghi (tài liệu).
chèn nhiều tài liệu
Để chèn nhiều tài liệu vào bộ sưu tập MongoDB, chúng ta sử dụng insert_many()
phương pháp.
insert_many()
Tham số đầu tiên của phương pháp là danh sách các từ điển chứa dữ liệu cần chèn:
mô hình
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["cơ sở dữ liệu của tôi"] cột = mydb["khách hàng"] danh sách = [ {"name": "Amy", "address": "Apple st 652"}, {"name": "Hannah", "address": "Mountain 21"}, {"name": "Michael", "address": "Valley 345"}, {"name": "Sandy", "address": "Ocean blvd 2"}, {"name": "Betty", "address": "Green Grass 1"}, {"name": "Richard", "address": "Sky st 331"}, {"name": "Susan", "address": "One way 98"}, { "name": "Vicky", "address": "Yellow Garden 2"}, { "name": "Ben", "address": "Park Lane 38"}, { "name": "William", "address": "Central st 954"}, { "name": "Chuck", "address": "Main Road 989"}, { "name": "Viola", "address": "Sideway 1633"} ] x = mycol.insert_many(mylist) # In danh sách giá trị _id của tài liệu được chèn: print(x.inserted_ids)
insert_many()
phương pháp trả về đối tượng InsertManyResult, đối tượng này có thuộc tính inserted_ids
để lưu ID của tài liệu được chèn.
Chèn nhiều tài liệu với ID được chỉ định
Nếu bạn không muốn MongoDB phân phối _id duy nhất cho tài liệu của bạn, bạn có thể chỉ định trường _id khi chèn tài liệu.
Hãy nhớ rằng giá trị phải là duy nhất. Hai tệp không thể có cùng một _id.
mô hình
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["cơ sở dữ liệu của tôi"] cột = mydb["khách hàng"] danh sách = [ { "_id": 1, "name": "John", "address": "Highway 37"}, { "_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": "Valley 345"}, { "_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"} ] x = mycol.insert_many(mylist) # In danh sách giá trị _id của tài liệu được chèn: print(x.inserted_ids)
- Trang Trước MongoDB Tạo Tập
- Trang Tiếp Theo MongoDB Tìm