2012-01-04 14 views

cevap

65

Close. SyntaxError: adı gibi bir sorunu neden olur, çünkü db.originalCollectionName.renameCollection('newCollectionName')

, adlandırmak edemez olanlar için http://www.mongodb.org/display/DOCS/renameCollection+Command

+4

ipucu: orada olabileceğini düşündüğünüz şeyleri bulmak için sekmeyi tamamlamayı deneyin;) – nav

+0

+1 Ayrıca, yeniden adlandırmak istediğiniz koleksiyon ('hedef toplama adı') zaten varsa, bunun hatayla karşılaşacağını da fark ettim. Söz konusu koleksiyonun ** düşmesinden memnunsanız **; sonra ikinci argüman olarak 'true' geçebilirsiniz, ör. db.originalCollName.renameCollection ('alreadyExistingCollName', true) ' – AlexP

+0

yeniden adlandırıldıktan sonra, dizinler ve her şey korunur mu? – user2810081

6

Bkz kullanın adı yasadışı olduğu için beklenmeyen belirteç YASADIŞI, öyle.

Sen parantez gösterimi ile arayarak bu çalışabilirsiniz:

4

db["oldCollectionILLEGALName"].renameCollection("someBetterName") Veritabanı adı "mytestdb" olduğunu varsayın ve koleksiyon adı "emir" dir. orders2015 basit yoldur için toplama isim değişikliği,

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

Not: db.collection.renameCollection() kanatlı bir koleksiyonları üzerinde desteklenmez.

İlgili konular