MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

MongoDB :index unique sur la propriété de l'élément de tableau

Autant que je sache, les index uniques imposent uniquement l'unicité entre différents documents, ce qui générerait une erreur de clé en double :

db.cats.insert( { id: 123, kittens: [ { id: 456 } ] } )
db.cats.insert( { id: 123, kittens: [ { id: 456 } ] } )

Mais c'est autorisé :

db.cats.insert( { id: 123, kittens: [ { id: 456 }, { id: 456 } ] } )

Je ne sais pas s'il existe un moyen d'appliquer la contrainte dont vous avez besoin au niveau Mongo, c'est peut-être quelque chose que vous pourriez vérifier dans la logique de l'application lorsque vous insérez une mise à jour ?