Я пишу для импорта данных из mysql в mongodb Я новичок в node.js & mongoDb, и мой вопрос заключается в том, как проверить, все ли вставлено для выхода из сценария? Он делает то, что он делает, но я не знаю, чтобы определить, что работа выполнена.Как проверить, закончен ли скрипт на node.js
var c = require('./config').development;
var mysql = require('mysql');
var mySqlConnection = mysql.createConnection({
host : c.mysqlHost,
port : c.mysqlPort,
database : c.mysqlDatabase,
user : c.mysqlUser,
password : c.mysqlPassword
});
var MongoClient = require('mongodb').MongoClient
, format = require('util').format;
var values = new Array("0", "100000", "200000", "300000", "400000");
MongoClient.connect('mongodb://127.0.0.1:27017/amazon', function(err, db) {
mySqlConnection.connect(function(err) {
if (err !== null) {
console.log(err);
}
values.forEach(function(limit) {
var sql = "SELECT id, ISO2, title, json_response FROM amazon_product WHERE id>"+limit+" LIMIT 100000";
mySqlConnection.query(sql, function(err, rows) {
rows.forEach(function(row) {
try {
db.collection('amazon' , function(err, col){
var obj = JSON.parse(row.json_response);
obj.iso2 = row.ISO2;
obj.mysqlId = row.id;
//How can I check that everything's is inserted?
col.insert(obj, function(){});
});
} catch (e) {
console.log('problem @id ' + row.id +' ' + e);
}
});
});
console.log("I'm on limit"+ limit);
});
});
});
Да. это называется, если в MongoDb вставлен 1 объект, но я вставляю около 300 Кб объектов. – jsnoob
он будет вызывать для каждой вызываемой функции времени, если клиенты 300 КБ будут получать доступ к этому коду, он будет называться 300 тыс. Раз. –
Чтобы вставить объект в mongodb, вы вызываете insert. Поэтому, если вы называете это N раз, он будет печатать его N раз, в результате он вставляет N объектов, или я вас не понимаю? –