MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

защо DuplicateKeyError:E11000 индекс на грешка при дублиран ключ:test.test.$notification_1 дублиран ключ:{:null}

Вероятно вече имате документ във вашата колекция, който или има notification: NULL или документ, който няма зададено поле за уведомяване. Ако дадено поле не е зададено, то се счита за нула. Тъй като уникален индекс позволява само една стойност на поле, не можете да имате два документа, които нямат набор от полета. Можете да заобиколите това, като използвате и sparse опция, докато създавате индекс. Нещо подобно трябва да работи (след премахване на вече съществуващия индекс на notification :

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

Вижте също:редки индекси и нулеви стойности в mongo




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Настройка на MongoDB с node.js:Грешка:неуспешно свързване към [localhost:27017]

  2. Може ли MongoDB да съхранява и манипулира низове от UTF-8 с кодови точки извън основната многоезична равнина?

  3. MongoDB:forEach срещу fetch + each

  4. Пролетни данни mongodb търсене за ISO дата

  5. Направете mongoid сесия само за четене