搜索

首页  >  问答  >  正文

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字段值。 求大神解答!!!

天蓬老师天蓬老师2834 天前585

全部回复(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
  • 取消回复