MongoDB Mettre à jour le nom de la collection
Dans MongoDB, vous ne pouvez pas renommer directement une collection via une commande.
MongoDB peut utiliser la méthode renameCollection pour renommer une collection.
La méthode renameCollection s'exécute dans la base de données admin de MongoDB et peut renommer une collection sous un autre nom.
La syntaxe de la commande renameCollection :
db.adminCommand({
renameCollection: "sourceDb.sourceCollection",
to: "targetDb.targetCollection",
dropTarget: <boolean>
})
Description du paramètre :
- renameCollection: Le nom complet de la collection à renommer (y compris le nom de la base de données).
- to: Le nom complet de la collection cible (y compris le nom de la base de données).
- dropTarget(Facultatif) : Valeur booléenne. Indique s'il faut supprimer la collection cible si elle existe déjà. La valeur par défaut est
false。
Exemple
Supposons que vous souhaitiez renommer oldCollection dans la base de données test en newCollection. Vous pouvez suivre les étapes ci-dessous :
1. Assurez-vous d'être connecté à la base de données test
use test
2. Exécutez la commande renameCollection
db.adminCommand({
renameCollection: "test.oldCollection",
to: "test.newCollection"
});
Si vous souhaitez renommer une collection vers une autre base de données, par exemple, renommer oldCollection dans la base de données test en newCollection dans la base de données production, vous pouvez faire ceci :
db.adminCommand({
renameCollection: "test.oldCollection",
to: "production.newCollection"
});
Notes
Exigences de permissions: Execute
renameCollectionLa commande nécessite les permissions appropriées sur les bases de données source et cible. Elle nécessite généralement ledbAdminoudbOwnerrôle.La collection cible ne doit pas exister: La collection cible ne peut pas déjà exister. Si la collection cible existe, une erreur sera renvoyée.
Index et données: Renommer une collection préserve tous les documents et index.
Vérifier le résultat du renommage
Après le renommage, vous pouvez vérifier si la nouvelle collection existe avec la commande suivante :
use test show collections
Si la collection a été renommée en newCollection, vous devriez voir newCollection dans les résultats.
Gérer l'échec du renommage
Si une erreur se produit pendant le processus de renommage, vous pouvez prendre les mesures appropriées en fonction du message d'erreur. Par exemple, si la collection cible existe déjà, vous pouvez d'abord supprimer la collection cible (si vous confirmez qu'elle n'est plus nécessaire), puis relancer l'opération de renommage :
Exemple
db.newCollection.drop();
use test
db.adminCommand({
renameCollection: "test.oldCollection",
to: "production.newCollection"
});
Grâce à la méthode renameCollection, vous pouvez gérer efficacement les noms des collections MongoDB, en veillant à ce que la structure de la base de données réponde aux exigences de l'application.
Autres extensions