尝试了 MongoDB 的 online tutorial.
http://www.mongodb.org/
包括增删查改操作。
新增记录
db.people.save({name:'tom', age: 20});
查找所有记录
db.people.find();
查找符合某条件的记录
db.people.find({age:20});
db.people.find({age:{'$gte': 30}});
特别注意,下面一句更新语句是整个记录覆盖。也就是说,第二个参数里没有指定的那些原来的属性就丢失了:
db.people.update({name:'tom'}, {age: 30, name: 'tom hanks'});
这个是真正的仅更新指定的字段:
db.people.update({name:'tom'}, {'$set': {age: 30, name: 'tom hanks'}});
如某个字段是数组,可以用下列语句往数组里加入值:
db.people.update({name:'tom'}, {'$push': {'lang': 'java}});
同样还有 $pull 可以从数组类型的字段里删除指定的值。
删除所有:
db.people.remove();
删除符合条件的记录:
db.people.remove({name:'tom'});
在尝试 tutorial 的时候发现,有时候执行 update 语句后,浏览器的 shell 会小小的卡死一下,然后再执行 find 命令要重复好几次才能找到记录。
在本机安装后需要确认一下,这个到底是网站上 online shell 的问题,还是 MongDB 自身在并发或快速读写的时候会出现的问题?如果是后者就要小心了。