Heim  >  Fragen und Antworten  >  Hauptteil

node.js – Mongo fügt einen Datensatz ein, aber einige Daten werden nicht eingefügt

Verwenden Sie node写了个服务提供一个接口,供调用方传入参数后,对参数进行封装,在 mongo 里面 insert, um einen Datensatz zu erstellen, und jetzt stelle ich fest, dass einige Felder nicht aktualisiert werden können. Der Code ähnelt dem folgenden

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

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

db.insert(data);

Zum Beispiel data 中的 ab字段能更新成功,但 c字段却未插入。一开始以为是所用的 mongodb包过旧的原因,现更新到最新版 2.2.26 版本依然无法更新。后来用 findOneAndUpdate命令替代,并返回更新后的文档,返回结果是有 c 值的,但 mongo 里面依然没有cFeldwert. Bitten Sie Gott um Antworten! ! !

天蓬老师天蓬老师2683 Tage vor457

Antworte allen(2)Ich werde antworten

  • PHPz

    PHPz2017-05-16 13:41:50

    换save方法不传_id 值试试。

    Antwort
    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!

    Antwort
    0
  • StornierenAntwort