天天看点

使用MongoDB需要注意的地方

最近项目里使用了MongoDB,遇到一些问题,可能不知道的很容易找了半天也没有头绪,总结一下:

1、update方法只更新一条记录

默认情况下update只更新符合查询条件的第一条找到的记录。而不像SQL里更新所有符合条件的记录。所以请按照需要手动添加 multi 这个参数。

2、update方法的更新参数

像下面这个语句

myColl.update( { _id: X }, {name: "Joe", age: 20 });

会把符合条件的原纪录按照{name: "Joe", age: 20 }完整替换,而不是简单的将name设为"Joe",age设为20.

如果只想更改这2个值,而不是替换完整对象,应该写

myColl.update( { _id: X },{$set: {name: "Joe", age: 20 }});