02_使用Node.js往mongodb插入数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了02_使用Node.js往mongodb插入数据相关的知识,希望对你有一定的参考价值。

上节课学习了如何使用Node.js连接数据库,这节课我们学习如何插入数据。

1、采用node.js连接MongoDB数据成功之后,想在数据库中写入数据,却显示db.collection不是一个函数。test.js代码如下:

var express = require("express");

var  app = express();

var MongoClient = require(‘mongodb‘).MongoClient;
var  assert = require(‘assert‘);//用于调试信息
// Connection URL
var url = ‘mongodb://localhost:27017/stu‘;//连接地址,斜杠"/myproject"表示数据库,若不存在则自动创建

app.get("/",function(req,res){
 MongoClient.connect(url, function(err, db) { // Use connect method to connect to the server
   //回调函数表示连接成功之后做的事情,db是连接上的数据库实体。
     if(err){ // assert.equal(null, err);将err和null进行比较,如若err==null相等,表示数据库连接成功。
       console.log("数据库连接失败");
       return;
     }
      console.log("Connected successfully to server");
      insertDocuments(db,function(result){console.log(result); });
     
  }); 
  res.send("你好啊");
});
app.listen(3000);

var insertDocuments = function(db, callback) {
  // Get the myTestDataBase collection
   db.collection(‘myTestDataBase‘).insertOne([
    {"hahaha" : 1} 
  ], function(err, result) { 
    console.log("Inserted 3 documents into the collection");
    callback(result);
    db.close();
  });
}

在cmd中运行命令:node test.js,控制台报错如下:

技术分享图片

2、解决办法(参考:https://segmentfault.com/q/1010000012306610

这个错误是出在mongodb的库中,只需要把node_modules中mongodb的版本换为2.3.33vision即可解决;

"dependencies": {
"mongodb": "^2.2.33"}

然后:

npm install

3、再次运行node test.js

以上是关于02_使用Node.js往mongodb插入数据的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 使用 MongoDB 的 ObjectId 作为查询条件

无法使用 Node.js 和 Mongoose 插入 MongoDB

无法使用 mongoose、Node.js 将数据插入到 mongoDB 中的 Document 字段中

使用 Node.js 将数组插入 MongoDB 子文档

node.js,mongodb,mongoose,html 我如何插入数据(在 index.html 中)?

Node.js + MongoDB:插入一个并返回新插入的文档