鍍金池/ 問答/數(shù)據(jù)庫  HTML/ Nodejs連接MongoDB修改數(shù)據(jù),updateMany()怎么沒有成功

Nodejs連接MongoDB修改數(shù)據(jù),updateMany()怎么沒有成功


var MongoClient = require('mongodb').MongoClient;

function _connectDB(callback) {
    var url = "MongoDB://127.0.0.1/haha";
    MongoClient.connect(url, function (err,db) {
        if(err) {
            callback(err,null);
            return;
        }
        callback(err,db);
    });
}

exports.updateMany = function (collectionName,json1,json2,callback) {
    _connectDB(function (err,db) {
        db.collection('collectionName').updateMany(
            json1,
            json2,
            function(err,results) {
                callback(err,results);
                db.close();//關(guān)閉數(shù)據(jù)庫
            });
    });
};
//limit,skip高效率做法
var express = require("express");
var app = express();
var db = require("./model/db3.js");


app.get("/xiugai",function (req,res) {
    //注意這里是是字符串
    db.updateMany(
        "student",
        {
            name:"哈哈"
        },
        {
            $set: {name : "嘻嘻"}

        },
        function (err,result) {
        if(err) {
            console.log(err);
            db.close();//關(guān)閉數(shù)據(jù)庫
        }
        res.send(result);
    });
});

app.listen(3000);

clipboard.png

結(jié)果:

clipboard.png

回答
編輯回答
心悲涼

你看看的updateMany 方法
圖片描述

集合名稱寫死了,不是你傳入的集合名稱,改為你傳入的集合名稱變量

2018年9月11日 12:42
編輯回答
墻頭草

把代碼中的漢字換成unicode再試試

2018年8月10日 03:46