2013-08-04 13 views
12

In MongoDb, quando provo a modificare il documento esistente di raccolta, si genera la seguente eccezione: javascript execution failed : can't save a DBQuery object at src/mongo/shell/collection.jsMongoDB: javascript esecuzione fallita: non è possibile salvare un oggetto DBQuery in src/mongo/shell/collection.js

Nella shell mongoDb eseguo la seguente azione:

> var doc1 = db.users.find({name:"Harmeet"}) 
> doc1.color = "Blue" 
> db.users.save(doc1) 

quando si chiama il metodo di salvataggio l'eccezione thow.

risposta

31

uso var doc1 = db.users.findOne({name:"Harmeet"})

db.users.find restituisce un cursore.

+0

grazie @Rony Gomes. –

+0

grazie, funziona! –

1

Anche se @Manuel Rony Gomes ha rispondere alla domanda, quando si desidera inserire più documenti trovati dalla collezione A nella collezione B in una sola volta, è possibile utilizzare la toArray() per farlo lavorare:

db.coll_B.insert(db.coll_A.find({}).toArray()) 
Problemi correlati