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

Kiểm tra xem bản upert MongoDB đã chèn hoặc cập nhật chưa

Có, trong một lệnh gọi an toàn (hoặc getLastError), hàm cập nhật sẽ trả về một mảng có trường upsert và trường updatedExisting.

Bạn có thể đọc phiên bản PHP của cái này tại đây:http://php.net/manual/en/mongocollection.insert.php về phía cuối.

Như nó nói trong tài liệu về upserted :

Nếu xảy ra trường hợp nâng cấp, trường này sẽ chứa trường _id của bản ghi mới. Đối với các cảnh báo, trường này hoặc trường updatedExisting sẽ hiện diện (trừ khi xảy ra lỗi).

Vì vậy, uperted chứa _id của bản ghi mới nếu một lần chèn đã được thực hiện hoặc nó sẽ tăng lên updatedExisting nếu nó cập nhật một bản ghi.

Tôi chắc chắn rằng một điều tương tự sẽ xuất hiện trong tất cả các trình điều khiển.

Chỉnh sửa

Nó thực sự sẽ là một boolean trong updatedExisting trường true hoặc false



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách ngăn xây dựng chỉ mục chạy trốn trong MongoDB

  2. mongoDB:Tạo một ObjectId cho mỗi phần tử con mới được thêm vào trường mảng

  3. Chỉ mục trên trường ts trong oplog.rs không được cập nhật

  4. Trận chiến của các cơ sở dữ liệu NoSQL - So sánh MongoDB và Cassandra

  5. Cách triển khai MongoDB trên Heroku