DBAtlas · Atlas d'exploitation des bases de données

48 NamespaceExists: Namespace (collection) already exists (le namespace/la collection existe déjà)

MongoDB

Que signifie cette erreur ?

La collection (namespace) que vous essayez de créer existe déjà. MongoDB signale sa présence ; il n'est donc pas nécessaire de créer une nouvelle collection avec le même nom et les mêmes options.

Cause

Tentative de recréer une collection existante avec createCollection (éventuellement avec d'autres options) ; scripts de schéma/d'installation exécutés plusieurs fois ; ou tentative de redéfinir un nom existant en capped collection ou avec des options spéciales.

Comment la corriger

Généralement sans risque à ignorer ; cela signifie que la collection existe déjà. Rendez vos scripts d'installation idempotents : vérifiez l'existence avant de créer (db.getCollectionNames().includes('name')). Pour changer les options, vous devez supprimer puis recréer la collection (sauvegardez d'abord les données) : db.my_collection.drop() puis createCollection.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur