当前位置: 首页 > 后端技术 > Node.js

mongoDB通过_id删除doc

时间:2023-04-03 10:57:58 Node.js

做项目,遇到需求。需要根据mongodb数据记录中的_id字段删除对应的docs。实际使用中发现直接使用db.collection('infochanges').remove({"_id":idvalue}).then(function(){})会报错,这里需要转换idvalue为mongodb默认_id字段的objectid类型所以,导入模块(mongoDB3.6)>varObjectId=require('mongodb').ObjectID;//工作其他mongoDB版本可以试试>varObjectId=require('mongodb').ObjectId;//Work引用完成后>db.collection('infochanges').remove({"_id":{"_id":ObjectId(idvalue)}).then(function(){})此时你会发现通过以上操作并不能成功删除数据,而是报错:TypeError:Cannotconvertundefinedornulltoobject关键点:请使用findAndRemovedb.collection('infochanges').findAndRemove({"_id":ObjectId(index)}).then(function(){})todeletedocsby_id使用findAndRemove,remove不起作用(3.6版本)希望能给遇到的道友一些帮助同样的问题,请指点和喷。