71 votes

Comment renommer une collection dans MongoDB ?

Existe-t-il un moyen très simple de renommer une collection dans mongo? Quelque chose comme:

 db.originalCollectionName.rename('newCollectionName');

Et sinon, quelle est la meilleure façon de renommer efficacement un ?

115voto

nav Points 1702

Proche. Utiliser db.originalCollectionName.renameCollection('newCollectionName')

Voir http://www.mongodb.org/display/DOCS/renameCollection+Command

16voto

lakshmikandan Points 2088

Supposons que le nom de la base de données est " mytestdb " et que le nom de la collection est " commandes ". changement de nom de la collection en commandes2015 Le moyen le plus simple est,

 > use mytestdb
> db.orders.renameCollection( "orders2015" )

Remarque : db.collection.renameCollection() n'est pas pris en charge sur les collections fragmentées.

15voto

Ev0oD Points 100

Pour ceux qui ne peuvent pas renommer, car le nom provoque un problème comme : SyntaxError : Unexpected token ILLEGAL, c'est parce que le nom est illégal.

Vous pouvez contourner ce problème en appelant avec la notation entre crochets : db["oldCollectionILLEGALName"].renameCollection("someBetterName")

6voto

arispen Points 595

Si vous utilisez le pilote MongoDB Node.js :

 mongoClient.db(dbName).collection('oldName').rename("newName");

https://mongodb.github.io/node-mongodb-native/3.5/api/Collection.html#rename

mon cas utilisait la mangouste :

 await mongoose.connection.collection("oldName").rename("newName");

2voto

akulich Points 31

Renommer une collection en cmd :

 cd C:\Program Files\MongoDB\Server\4.2\bin
mongo
use yourdb
db.yourcollection.renameCollection("someBetterName")

Cet exemple est fait pour MongoDB 4.2

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X