【发布时间】:2017-06-26 18:02:32
【问题描述】:
我是 mongo 和 node 的新手。我正在尝试将 csv 上传到 mongodb。
步骤包括:
- 读取 csv。
- 将其转换为 JSON。
- 将其推送到 mongodb。
我使用 'csvtojson' 模块将 csv 转换为 json 并使用代码推送它:
MongoClient.connect('mongodb://127.0.0.1/test', function (err, db) { //connect to mongodb
var collection = db.collection('qr');
collection.insert(jsonObj.csvRows, function (err, result) {
console.log(JSON.stringify(result));
console.log(JSON.stringify(err));
});
console.log("successfully connected to the database");
//db.close();
});
此代码适用于最大 4mb 的 csv;不仅如此,它还不起作用。
我试图解决这个错误
console.log(JSON.stringify(err));
它返回了{}
注意:我的是32位系统。
是不是因为 32 位系统有 4mb 的文档限制?
我处于无法限制 csv 文件中属性的大小和数量的情况(即,代码将处理各种类型的 csv 文件)。那么如何处理呢?我有可用的模块吗?
【问题讨论】:
-
我认为
collection.insert方法要求回调是第三个参数,你的console.log 甚至被执行了吗? -
@MDG 它正在被执行。如果插入,我会得到结果。在不插入的情况下会产生“未定义”结果
-
啊,当你超过 4mb 时会发生这种情况。我明白了。
-
是的。我的问题是是否有解决方法。如果不是如何找到我们可以处理的不同类型 csv 的最大行数。
-
是的,你必须使用流,查看这个已接受的答案:stackoverflow.com/questions/20722891/…
标签: javascript node.js mongodb