-1
MongoコレクションのすべてのドキュメントのIDをspring mongoで変更する方法はありますか?スプリングでmongoドキュメントのIDを変更する
多くの方法でこれをしようが、私のようなエラーメッセージを得た:
the (immutable) field '_id' was found to have been altered to _id
または
Write errors: [BulkWriteError{index=0, code=16837, message='The _id field cannot be changed from {_id: "xyz"} to {_id: "zxy"}.
これを行う方法はありますか?
私がBasicDBObjectのreplaceOneメソッドを使ってidを置き換えようとすると、2番目のエラーが出ます。それとも、あなたが新しい_idを設定し、古いものを削除することが意味するものではありませんか? – neptune
私は今mongoドライバにアクセスしていませんが、これは私が何を示唆していたものです(テストされていません): BasicDBObject = new BasicDBObject( "$ set"、new BasicDBObject( "_ id"、1234)); someCollection.update(someSearchQuery、set); その間に古い_idを取得し、新しいIDを設定した後に削除してください。 – sharath
これを確認してください:https://stackoverflow.com/questions/23130161/how-to-update-the-id-field-in-a-mongodb-document – sharath