mongodb中insert()和save()的异同

作者:admin     字体:[增加 减小]    类型:原创
mongodb中的insert与save方法的不同,就如同mysql中insert与replace中的不同一样,第一是用来纯插入数据的,第二个则在插入数据时判断是否存在,不存在则插入数据,存在则修改数据。

mongodb中的insert与save方法的不同,就如同mysql中insert与replace中的不同一样,第一是用来纯插入数据的,第二个则在插入数据时判断是否存在,不存在则插入数据,存在则修改数据,就这么简单。

若新增的数据中存在主键,insert() 会提示错误,而save() 则更改原来的内容为新内容。

如: 已存在数据:{_id : 1, " name " : " n1 " },再次进行插入操作时, insert({_id : 1, " name " : " n2 " }) 会报主键重复的错误提示 save({ _id : 1, " name " : " n2 " }) 会把 n1 修改为 n2 。

相同点:

若新增的数据中没有主键时,会增加一条记录。 已存在数据:{ _id : 1, " name " : " n1 " },再次进行插入操作时, insert({ " name " : " n2 " }) 插入的数据因为没有主键,所以会增加一条数据 save({ " name " : " n2 " })增加一条数据。