Mysql Node.js MongoDB-collection.find().toArray(回调)无法执行
我想从MongoDB读取数据并将其写入MySQL。 Mongo中有这么多行,我认为应该使用每一行将它们插入MySQL,但我不知道我是否正确 我的代码如下:Mysql Node.js MongoDB-collection.find().toArray(回调)无法执行,mysql,node.js,mongodb,Mysql,Node.js,Mongodb,我想从MongoDB读取数据并将其写入MySQL。 Mongo中有这么多行,我认为应该使用每一行将它们插入MySQL,但我不知道我是否正确 我的代码如下: MongoClient.connect('mongodb://localhost:27017/test', function(err, db) { console.log(Date() + "mongoDb connect success"); async.parallel([ function() {
MongoClient.connect('mongodb://localhost:27017/test', function(err, db) {
console.log(Date() + "mongoDb connect success");
async.parallel([
function() {
conn.query(selectAllOrders, function(error, rows, fields) {
if (error)
console.log(Date() + 'error');
console.log(Date() + ' row length:', rows.length);
async.eachSeries(rows, function(order) {
findTakerLocus(db, 'position_2015_06_15', {}, function(res) {
console.log(res);
});
}, function(error) {
console.log(Date() + 'error:' + error);
});
console.log(Date() + 'you are not right');
});
},
function() {
db.close();
console.log(Date() + 'mongoDb关闭连接');
conn.end();
console.log(Date() + 'mysql 连接关闭');
}
], function(err, results) {
log('1.1 err: ', err);
log('1.1 results: ', results);
});
});
var findTakerLocus = function(db, collectionName, key, callback) {
var collection = db.collection(collectionName);
collection.find(key).toArray(function(err, docs) {
console.log(' excute callback');
callback(docs);
});
}
尝试检查mongo db connection回调中的错误。您正在并行运行两个函数。第一个函数运行查询以查找所需的数据,但第二个函数运行异步查询。parallel()调用将立即关闭数据库连接。另外,由于没有在函数中使用回调,所以并行调用也不知道异步库的使用方式何时完成