1. 程式人生 > >02_使用Node.js往mongodb插入數據

02_使用Node.js往mongodb插入數據

數據庫連接 callback 再次 urn function 成功 運行 插入數據 只需要

上節課學習了如何使用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插入數據