搜尋

首頁  >  問答  >  主體

node.js - mongo insert一筆記錄,但某些資料未插入

node寫了個服務提供一個接口,供呼叫方傳入參數後,對參數進行封裝,在mongo 裡面insert 一筆記錄,現發現某幾個字段更新不進去。程式碼類似以下

const db = mongodb.collection('collection_name');

let data = {
    a: 'value1',
    b: 'value2',
    c: 'value3'
};

db.insert(data);

例如 data 中的 ab欄位能更新成功,但 c欄位卻未插入。一開始以為是所用的 mongodb包過舊的原因,現更新到最新版 2.2.26 版本依然無法更新。後來用findOneAndUpdate指令替代,並返回更新後的文檔,返回結果是有c 值的,但mongo 裡面依然沒有c字段值。 求大神解答! ! !

天蓬老师天蓬老师2783 天前560

全部回覆(2)我來回復

  • PHPz

    PHPz2017-05-16 13:41:50

    換save方法不傳_id 值試試。

    回覆
    0
  • 迷茫

    迷茫2017-05-16 13:41:50

    依照您的語句,簡單試了,沒發現您說的情形。

    var MongoClient = require('mongodb').MongoClient,
      test = require('assert');
    
    MongoClient.connect('mongodb://localhost:27017/test', function(err, db) {
    
      var collection = db.collection("collection_name");
    
      var data = {
        a: 'value1',
        b: 'value2',
        c: 'value3'
      };
     
      collection.insert(data);
      });
     
     

    軟體資訊:資料庫 MongoDB 3.4 + 驅動 mongodb 2.2.26

    供參考.

    Love MongoDB! Have fun!

    回覆
    0
  • 取消回覆