2012-01-04 17 views
41

क्या मोंगो में संग्रह का नाम बदलने का कोई आसान तरीका है? कुछ ऐसा:मैं MongoDB में संग्रह का नाम कैसे बदल सकता हूं?

db.originalCollectionName.rename('newCollectionName'); 

और यदि नहीं, तो प्रभावी ढंग से नाम बदलने के बारे में जाने का सबसे अच्छा तरीका क्या है?

उत्तर

65

बंद करें। का प्रयोग करें db.originalCollectionName.renameCollection('newCollectionName')

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

+4

संकेत: उन चीज़ों को ढूंढने के लिए टैब का उपयोग करने का प्रयास करें जो आपको लगता है कि वहां हो सकता है;) – nav

+0

+1 मैंने यह भी पाया कि यदि आप जिस संग्रह का नाम बदलना चाहते हैं ('लक्ष्य संग्रह नाम') पहले से मौजूद है तो यह त्रुटि होगी। यदि आप कहा गया संग्रह ** ** ** के लिए खुश हैं; तो आप दूसरे तर्क के रूप में 'सत्य' पारित कर सकते हैं, उदा। 'db.originalCollName.renameCollection ('readyExistingCollName ', सत्य) नाम के बाद' – AlexP

+0

, इंडेक्स और सब कुछ रखा जाएगा? – user2810081

6

जो लोग नाम नहीं बदल सकते के लिए देखें क्योंकि नाम की तरह एक मुद्दा कारण बनता है: सिंटैक्स त्रुटि: अनपेक्षित टोकन अवैध ऐसा इसलिए है क्योंकि नाम अवैध है।

आप इस के आसपास कोष्ठक अंकन के साथ फोन करके काम कर सकते हैं: db["oldCollectionILLEGALName"].renameCollection("someBetterName")

4

मान लें कि डेटाबेस का नाम "mytestdb" है और संग्रह का नाम "आदेश" है। orders2015 सबसे सरल तरीका है करने के लिए संग्रह नाम परिवर्तन,

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

नोट: db.collection.renameCollection() sharded संग्रह पर समर्थित नहीं है।

संबंधित मुद्दे