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 中的 a、b字段能更新成功,但 c字段卻未插入。一開始以為是所用的 mongodb包過舊的原因,現更新到最新版 2.2.26 版本依然無法更新。后來用 findOneAndUpdate命令替代,并返回更新后的文檔,返回結果是有 c 值的,但 mongo 里面依然沒有c字段值。 求大神解答!!!
問題解答
回答1:換save方法不傳_id 值試試。
回答2:按照您的語句,簡單試了,沒發現您說的情形。
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!
