MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Sự khác biệt giữa save và insert trong Mongo DB là gì?

Lưu Vs Chèn:

Trong các ví dụ đã cho của bạn, hành vi về cơ bản giống nhau.

save hoạt động khác nếu nó được truyền với tham số "_id".

Để lưu, Nếu tài liệu chứa _id , nó sẽ hỗ trợ truy vấn bộ sưu tập trên _id trường, Nếu không, nó sẽ chèn.

Nếu tài liệu không tồn tại với giá trị _id được chỉ định, phương thức save () thực hiện chèn với các trường được chỉ định trong tài liệu.

Nếu tài liệu tồn tại với giá trị _id được chỉ định, phương thức save () sẽ thực hiện cập nhật, thay thế tất cả trường trong bản ghi hiện có bằng các trường từ tài liệu.

Lưu so với Cập nhật :

update sửa đổi một tài liệu hiện có phù hợp với các tham số truy vấn của bạn. Nếu không có tài liệu phù hợp như vậy, đó là lúc upsert có trong hình ảnh.

  • upsert : false :Sẽ không có gì xảy ra khi không có tài liệu như vậy tồn tại
  • upsert : true :Tài liệu mới được tạo với nội dung tương đương với tham số truy vấn và cập nhật tham số

save :Không cho phép bất kỳ tham số truy vấn nào. if _id tồn tại và có một tài liệu phù hợp với cùng một _id , nó thay thế nó. Khi không có _id được chỉ định / không có tài liệu phù hợp, nó sẽ chèn tài liệu đó như một tài liệu mới.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Meteor có những cơ chế bảo mật nào?

  2. MongoDB:Máy chủ có cảnh báo khởi động

  3. Có quy ước đặt tên bộ sưu tập trong MongoDB không?

  4. Sự cố với MongoDB GridFS Lưu tệp với Node.JS

  5. Giám sát cơ sở dữ liệu không cần tác nhân với ClusterControl