2015-06-19 7 views
6

Qual è il modo migliore per rilasciare una raccolta in MongoDB?Come rilasciare una raccolta in MongoDB?

Sto usando il seguente:

db.collection.drop() 

Come descritto in the manual:

db.collection.drop()

Rimuove una collezione dal database. Il metodo rimuove anche gli eventuali indici associati alla raccolta interrotta. Il metodo fornisce un wrapper attorno al comando drop.

Ma come posso rilasciarlo dalla riga di comando?

risposta

19

Quindi, o di questi sono modi validi per farlo:

mongo <dbname> --eval 'db.<collection>.drop()' 

db.<collection>.drop() 

Questo è il modo in cui sono pienamente provato, la creazione di una banca dati mytest con una collezione hello.

  • Crea db mytest:

    > use mytest 
    switched to db mytest 
    
  • creare una collezione hello:

    > db.createCollection("hello") 
    { "ok" : 1 } 
    
  • Mostra tutte le collezioni là:

    > db.getCollectionNames() 
    [ "hello", "system.indexes" ] 
    
  • inserire alcuni dati fittizi:

    > db.hello.insert({'a':'b'}) 
    WriteResult({ "nInserted" : 1 }) 
    
  • assicurarsi che fosse inserito:

    > db.hello.find() 
    { "_id" : ObjectId("55849b22317df91febf39fa9"), "a" : "b" } 
    
  • eliminare la raccolta e assicurarsi che non è presente alcun altro:

    > db.hello.drop() 
    true 
    > db.getCollectionNames() 
    [ "system.indexes" ] 
    

Funziona anche (non sto ripetendo i comandi precedenti, poiché è jus t su ricreare il database e la raccolta):

$ mongo mytest --eval 'db.hello.drop()' 
MongoDB shell version: 2.6.10 
connecting to: mytest 
true 
$