我试图根据_id从我的mongoDb数据库中删除一些东西。在我的控制台中,我不断收到行正在删除的消息,但是当我检查数据库时,该对象仍然存在。
这是我的功能:
function deleteById(){
//5989df87e027c737e5500d17
url_database= mongodb://localhost:27017/incept
MongoClient.connect(url_database, function(err, db) {
if (err) throw err;
var myquery = { _id: '5989df87e027c737e5500d17' };
db.collection("medicament").removeOne(myquery, function(err, obj) {
if (err){
console.log("failed");
throw err;
}
console.log("1 document deleted");
db.close();
});
});
}
这是我的json对象
{ _id: 5989df87e027c737e5500d17,
medicine_name: 'ada',
dosage_value: 'ads',
dosage_unit: 'MG',
prescribed_for_days: 'ads',
doctor_name: 'asda',
morning_select: '06:00',
afternoon_select: '06:00',
evening_select: '06:00',
night_selct: '06:00' }
答案 0 :(得分:1)
您确定方法removeOne吗?我想要删除你必须使用deleteOne。
答案 1 :(得分:0)
您需要将字符串_id
转换为ObjectID
,因为它是如何存储在集合中的:
const mongodb = require('mongodb');
var myquery = { _id: mongodb.ObjectID('5989df87e027c737e5500d17') };