1. 程式人生 > >NodeJS | 連線mongodb資料庫成功之後報db.collection is not a function錯誤解決辦法(四)

NodeJS | 連線mongodb資料庫成功之後報db.collection is not a function錯誤解決辦法(四)

在nodejs操作mongodb顯示資料庫連線成功之後突然報了db.collection is not a function錯誤,引起這個錯誤的原因是nodejs獲取資料庫表的API寫法不對。(正如NodeJS | 入門篇 (一)提到的,不同版本的API,使用規範有差別)。修改方式如下:

var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://localhost:27017/testdb';   
 
var insertData = function(db, callback) {  
    //3.0新寫法
    var db = db.db("testdb");
    var collection = db.collection('test_table_01');
    //var collection = db.collection('users');//將這句改成上面兩句

    var data = [{_id:7,"name":'rose',"age":21},{_id:8,"name":'mark',"age":22}];
    collection.insert(data, function(err, result) { 
        if(err)
        {
            console.log('Error:'+ err);
            return;
        } 
        callback(result);
    });
}
 
MongoClient.connect(url, function(err, db) {
    if (err) throw err;
    console.log("連線成功!");
    insertData(db, function(result) {
        console.log(result);
        db.close();
    });
});