mongodbのupdate

mongodbのデータをシェルからアップデートする方法。自分宛のメモ。
手順としては

  1. 対象データをオブジェクトへロードする。
  2. ロードしたオブジェクトのデータを更新する。
  3. 更新したオブジェクトをDBコレクションへ投入する。

具体的な手順は以下のとおり。

対象データをオブジェクトへロードする

ユニークなキーを指定して、適当なオブジェクトへ対象データをストアします。

> a=db.hoge.findOne({"item_id":"2012-01-30-0001"})

オブジェクトを更新

ロードしたオブジェクト内の更新対象データを更新。

> a.name="new_name"

データを投入

db.hoge.update({"item_id":"2012-01-30-0001"},a)

または

> db.hoge.save(a)

結構めんどくさい。。