是否有一种简单的方法可以在mongo中重命名一个集合?类似的东西:
db.originalCollectionName.rename('newCollectionName');
如果没有,有效重命名的最佳方式是什么?
答案 0 :(得分:85)
关闭。使用db.originalCollectionName.renameCollection('newCollectionName')
请参阅http://www.mongodb.org/display/DOCS/renameCollection+Command
答案 1 :(得分:7)
对于那些无法重命名的人,因为名称会导致类似的问题:SyntaxError:意外的令牌ILLEGAL,这是因为该名称是非法的。
您可以使用括号表示法来解决此问题:db["oldCollectionILLEGALName"].renameCollection("someBetterName")
答案 2 :(得分:2)
如果您使用的是Node.js MongoDB驱动程序:
mongoClient.db(dbName).collection('oldName').rename("newName");
https://mongodb.github.io/node-mongodb-native/3.5/api/Collection.html#rename
我的情况是使用猫鼬:
await mongoose.connection.collection("oldName").rename("newName");
答案 3 :(得分:1)
在 cmd 中重命名集合:
cd C:\Program Files\MongoDB\Server\4.2\bin
mongo
use yourdb
db.yourcollection.renameCollection("someBetterName")
这个例子是为 MongoDB 4.2 制作的
答案 4 :(得分:0)
您可以使用以下语法在MongoDB中重命名现有集合。
db.originalCollectionName.renameCollection('newCollectionName')
例如,如果您现有的集合名称为“ demo”,并想重命名为“ demo_updated”,则查询如下:-
db.demo.renameCollection('demo_updated')
谢谢!