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

MongoDB khác biệt giữa mã lỗi 11000 và 11001

11001 không tồn tại trong nhánh 2.5 / 2.6 trên GitHub, vì vậy nếu bạn đang thử phiên bản 2.5 thì bạn không thể tạo nó. Tôi đã xem mã nhưng không thể tìm thấy bất kỳ đường dẫn nào hiển thị 11001 mã trực tiếp.

Vài dòng sau sẽ hiển thị mã 11001 :

db.so.drop();
db.so.insert( { foo: 5 } );
db.so.ensureIndex( { foo: 1 }, { unique: true } );
db.so.insert( { foo: 6 } );

11000 dự kiến :

db.so.insert( { foo: 5 } );
E11000 duplicate key error index: test.so.$foo_1  dup key: { : 5.0 }

Và bây giờ để truy cập 11001 :

db.so.insert( { foo: 6 } );
db.so.update( { foo: 6 }, { $set: { foo: 5 } } );
E11000 duplicate key error index: test.so.$foo_1  dup key: { : 5.0 }

Vẫn là 11000 ban đầu , nhưng:

db.getPrevError();
{
    "err" : "E11000 duplicate key error index: test.so.$foo_1  dup key: { : 5.0 }",
    "code" : 11001,
    "n" : 0,
    "nPrev" : 1,
    "ok" : 1
}

Thông báo lỗi văn bản gốc hiển thị E11000 là một lỗi: https://jira.mongodb.org/browse/SERVER-5978



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tài liệu cập nhật Mongoose Không thành công với findByIdAndUpdate

  2. Hỏi MongoDB xem nó có phải là Master ngoài bashscript không

  3. Cách thiết lập tính năng ngang hàng giữa MongoDB Atlas và Ứng dụng nút môi trường tiêu chuẩn của Google App Engine

  4. Bạn có thể tìm kiếm các mô hình khác bằng các phương thức thể hiện trong Mongoose không?

  5. MongoDB / PyMongo:Làm thế nào để 'thoát' tham số trong tìm kiếm regex?