Trong quá trình chèn, mongod sẽ tạo trường _id và gán cho nó một giá trị ObjectId duy nhất, như được xác minh bởi tài liệu được chèn. Để xem tài liệu đã chèn, hãy xem câu lệnh sau Show
Thí dụ. Chèn một tài liệu chỉ định an_idFieldTrong ví dụ sau, tài liệu được chuyển đến phương thức theinsert() bao gồm the_idfield. Giá trị của_idphải là duy nhất trong bộ sưu tập để tránh lỗi khóa trùng lặp
đầu ra > db.invoice.insert( { _id: 901,inv_no: "I00001", inv_date: "10/10/2012" } ); WriteResult({ "nInserted" : 1 }) Thao tác chèn tài liệu sau vào bộ sưu tập sản phẩm
Thí dụ. Chèn nhiều tài liệuVí dụ sau thực hiện thao tác chèn hàng loạt ba tài liệu bằng cách chuyển một mảng tài liệu tới phương thức insert(). Các tài liệu trong mảng không nhất thiết phải có các trường giống nhau. Chẳng hạn, tài liệu đầu tiên trong mảng có an_idfield và aunitfield. Nhưng tài liệu thứ hai và thứ ba không chứa an_idfield, mongod sẽ tạo the_idfield cho tài liệu thứ hai và thứ ba trong quá trình chèn
đầu ra BulkWriteResult({ "writeErrors" : [ ], "writeConcernErrors" : [ ], "nInserted" : 3, "nUpserted" : 0, "nMatched" : 0, "nModified" : 0, "nRemoved" : 0, "upserted" : [ ] }) Các hoạt động chèn ba tài liệu sau đây
Lấy dữ liệu nhà hàng từ đây Cư xửViết an toàn Phương thức insert() sử dụng lệnh chèn, sử dụng mối quan tâm ghi mặc định. Để chỉ định mối quan tâm ghi khác, hãy bao gồm mối quan tâm ghi trong tham số tùy chọn Tạo bộ sưu tập Nếu bộ sưu tập không tồn tại thì phương thức insert() sẽ tạo bộ sưu tập Trường _id Nếu tài liệu không chỉ định trường _id thì MongoDB sẽ thêm trường _id và gán một ObjectId duy nhất cho tài liệu trước khi chèn. Hầu hết các trình điều khiển tạo một ObjectId và chèn trường _id, nhưng mongod sẽ tạo và điền _id nếu trình điều khiển hoặc ứng dụng không Nếu tài liệu chứa trường _id, thì giá trị _id phải là duy nhất trong bộ sưu tập để tránh lỗi khóa trùng lặp Tóm lược. trong hướng dẫn này, bạn sẽ học cách sử dụng phương pháp MongoDB 0 để chèn một tài liệu vào một bộ sưu tập Giới thiệu về phương thức insertOne() của MongoDBPhương pháp 0 cho phép bạn chèn một tài liệu vào một bộ sưu tập Phương thức 0 có cú pháp như sau
Phương thức 0 chấp nhận hai đối số
Phương thức 0 trả về một tài liệu chứa các trường sau
Lưu ý rằng nếu 5 không tồn tại, phương thức 0 cũng sẽ tạo bộ sưu tập và chèn 4 vào đó Nếu bạn không chỉ định trường 1 trong tài liệu, MongoDB sẽ thêm trường 1 và tạo một 7 duy nhất cho trường đó trước khi chèn Nếu bạn chỉ định rõ ràng một giá trị cho trường 1, bạn cần đảm bảo rằng giá trị đó là duy nhất trong bộ sưu tập. Nếu không, bạn sẽ gặp lỗi khóa trùng lặp Để chèn nhiều tài liệu vào một bộ sưu tập, bạn sử dụng phương thức 9 Ví dụ về phương thức insertOne() của MongoDBĐầu tiên, bạn cần khởi chạy mongo shell và kết nối nó với cơ sở dữ liệu 0
1) Ví dụ về chèn tài liệu không có trường _idVí dụ sau sử dụng phương thức 0 để chèn một tài liệu mới vào bộ sưu tập sách
đầu ra
Trong ví dụ này, chúng tôi đã chuyển một tài liệu tới phương thức 0 mà không chỉ định trường 1. Do đó, MongoDB đã tự động thêm trường 1 và gán cho nó một giá trị duy nhất là 7 Lưu ý rằng bạn sẽ thấy một giá trị 7 khác với ví dụ này vì các giá trị 7 dành riêng cho máy và thời gian khi phương thức 0 thực thi Để chọn tài liệu mà bạn đã chèn, bạn có thể sử dụng phương thức 9 như thế này
đầu ra
2) Ví dụ về chèn tài liệu có trường _idVí dụ sau sử dụng phương thức 0 để chèn một tài liệu có trường 1 vào bộ sưu tập 2
đầu ra
Ví dụ sau cố gắng chèn một tài liệu khác có trường 1 đã tồn tại vào bộ sưu tập 2 Truy vấn MongoDB trả về cái gì?Theo mặc định, truy vấn trong MongoDB trả về tất cả các trường trong tài liệu phù hợp . Để giới hạn lượng dữ liệu mà MongoDB gửi đến các ứng dụng, bạn có thể bao gồm một tài liệu phép chiếu để chỉ định hoặc hạn chế các trường trả về.
Đâu là sự khác biệt giữa insertvà save?Chèn giống như việc bạn muốn chèn bất kỳ bản ghi mới nào và khi lưu hoạt động giống như thao tác cập nhật cho bản ghi hiện có .
Làm cách nào để chèn dữ liệu vào MongoDB?Để chèn dữ liệu vào bộ sưu tập MongoDB, bạn cần sử dụng phương thức insert() hoặc save() của MongoDB .
Làm cách nào để xem dữ liệu đã chèn trong MongoDB?Xem dữ liệu cụm của bạn
. Lệnh này trả về đầu ra sau. PyMongo find_one() method. This command returns the following output. |