MongoDB修改、删除文档的域属性实例
由于本博使用的博客程序是边开发边使用的,所以开发过程中动态创建了某些现在不需要的属性
MongoDB是无Schema的,不像关系数据库那样列属性定义在表而非记录中,MongoDB的集合中的每个文档可以拥有各自不同的域属性。
MongoDB中使用db.collections.update修改集合中若干文档的域属性,使用$set增加域,$unset删除域。
删除集合中所有文档的一个域
db.posts.update({},{$unset:{deleted_at:1}},{multi:true})
1.第一个参数表示选中某些文档,这里为{}表示选中当前posts集合中的所有文档
2.第二个参数为具体的更新操作,$unset表示删除域
3.第三个参数为额外选项,{multi:true}表示更新所有满足要求的文档,默认只会更新第一个
也可以同时删除多个域
db.categories.update({},{$unset:{deleted_at:1,desc:1}},{multi:true})
也以同时删除和新增域
db.tags.update( {}, {$unset:{deleted_at:1},$set:{slug:1,description:1}}, {multi:true} )