mongodb 数据修改
Posted Sky_Ice
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb 数据修改相关的知识,希望对你有一定的参考价值。
update:语法格式如下:
db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } )
参数说明:
- query : update的查询条件,类似sql update查询内where后面的。
- update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
- upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
- multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
- writeConcern :可选,抛出异常的级别。
eg:有一条数据为 name = lisi,age = 12,现在,想修改这条数据的 age = 20
代码如下:
db.admin.update({name:\'lisi\'},{$set:{age:20}}) // 第一个参数表示查找到该条数据,第二个参数表示修改对应字段值
如果,不写 $set ,则表示,该条数据将被修改为第二个参数中设置的值:
修改后:
可以看到,我们已经无法通过 name = \'lisi\',查找到该条数据,
这条数据被修改为
此时,修改的只是当前查询条件下,查询到的第一条数据。
如果,我们的查询条件查询到多条数据,我们想将所有查询到的数据都进行同样的修改,
比如,我想修改所有 name = \'zhangsan\' 的 age = 21,
代码如下:
db.user.update({\'name\':\'zhangsan\'},{$set:{\'age\': 21}},{multi:true})
执行完毕,我们来查看结果:
此时,查询条件 name = \'zhangsan\' 的所有数据的 age 都被修改为 20
以上是关于mongodb 数据修改的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )(代码片段
Android 逆向使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )(代码片段