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

tại sao DuplicateKeyError:E11000 chỉ mục lỗi khóa trùng lặp:test.test. $ notification_1 khóa trùng lặp:{:null}

Bạn có thể đã có một tài liệu trong bộ sưu tập của mình có notification: NULL hoặc tài liệu chưa đặt trường thông báo. Nếu một trường không được đặt, thì nó được coi là null. Bởi vì một chỉ mục duy nhất chỉ cho phép một giá trị cho mỗi trường, bạn không thể có hai tài liệu không có bộ trường. Bạn cũng có thể giải quyết vấn đề này bằng cách sử dụng sparse trong khi tạo chỉ mục. Một cái gì đó như thế này sẽ hoạt động (sau khi giảm chỉ mục đã tồn tại trên notification :

self.db_database[co_name].ensure_index(('notification'),unique=True,sparse=True)

Xem thêm: chỉ mục thưa thớt và giá trị rỗng trong mongo




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Phân tích các truy vấn chậm trong MongoDB

  2. Ký tự khoảng trắng trong MongoDB

  3. Tính khoảng cách trong Java bằng MongoDB

  4. ID ngắn thân thiện với người dùng cho mongo

  5. Điều gì xảy ra khi mongodb hết bộ nhớ?