MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como garantir um item exclusivo em uma matriz com base em campos específicos - mongoDB?


Mustafa, restrições exclusivas não são impostas em uma única matriz, embora sejam aplicadas entre documentos em uma coleção. Este é um bug conhecido que não será corrigido por um tempo:

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

Há uma solução alternativa, no entanto. Mantenha seu índice exclusivo no lugar e:

1) Certifique-se de que seu aplicativo não insira novos documentos com valores duplicados na matriz. Você pode verificar a exclusividade no código do aplicativo antes de inserir.

2) Ao atualizar documentos existentes, use $addToSet em vez de $push.