今はアカウントとるの緩いので、まだなら是非。
おかしいな・・・www.bloglines.com/pingにPOSTしても無反応だ。使い方間違えてるのかな。
最初の地震、ベッドで目をつぶりながら、 「なんでドアがミリミリ言ってるんだろう...上の住人が家具でも移動してるんだろうか」とか 思っていたが...2回目(?)の茨城県沖M7地震はさすがに飛び起きたよ。 例によって免震マンションなのでほとんど揺れないんだけど、揺れるときは長周期で揺れるので キモチワルイ。
久々に超初歩的なミスをやってしまいました....
ドキュメント指向データベースのMongoDBはJSON(BJSON)のドキュメントをそのまま格納できます。
> db.col.save({ _id:123, text:'hoge', lat:35, lon:139 }); > db.col.save({ _id:456, text:'piyo', lat:36, lon:141 });
こんな感じでそのまま入っている。
> db.col.find(); { "_id" : 123, "text" : "hoge", "lat" : 35, "lon" : 139 } { "_id" : 456, "text" : "piyo", "lat" : 36, "lon" : 141 }
ここで特定のカラムのみを書き換えたい場合はupdateコマンドと$setオペレータを使います。
> db.col.update({_id:456}, {$set:{text:'aho'}}, { multi: false, upsert: false });
こうすればちゃんと変更される。
> db.col.find(); { "_id" : 123, "text" : "hoge", "lat" : 35, "lon" : 139 } { "_id" : 456, "text" : "aho", "lat" : 36, "lon" : 141 }
しかし!この$setを省略してしまうと....
> db.col.update({_id:456}, {text:'aho'}, { multi: false, upsert: false }); > db.col.find(); { "_id" : 123, "text" : "hoge", "lat" : 35, "lon" : 139 } { "_id" : 456, "text" : "aho" }
これは結果的に _id:456の指し示すドキュメントをtext:'aho'に置き換えた ということ。 だからデータが消える...この操作を580万件中7万件に適用して、データを欠けさせたのが、私です(死)。