MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak zapewnić unikalny element w tablicy opartej na określonych polach - mongoDB?

Mustafa, unikatowe ograniczenia nie są wymuszane w ramach jednej tablicy, chociaż są one wymuszane między dokumentami w kolekcji. To znany błąd, który nie zostanie naprawiony przez jakiś czas:

https://jira.mongodb.org/browse/SERVER-1068

Istnieje jednak obejście. Utrzymuj swój unikalny indeks na miejscu i:

1) Upewnij się, że aplikacja nie wstawia do tablicy nowych dokumentów ze zduplikowanymi wartościami. Możesz sprawdzić unikalność kodu aplikacji przed wstawieniem.

2) Podczas aktualizacji istniejących dokumentów użyj $addToSet zamiast $push.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kopia zapasowa i przywracanie MongoDB za pomocą MongoDump

  2. Nazwy pól FieldPath nie mogą zawierać „.” w $grupie

  3. Jaki jest najbardziej dojrzały sterownik MongoDB dla C#?

  4. Jak przetestować aktualizacje aplikacji MongoDB?

  5. Aktualizacja Mongoose bez oddzwaniania