Я хотел бы получить синхронные результаты.
Все, что я хочу, хочу ввести данные, разделив 5000 на единицу.
Однако в результате асинхронного перечисления он борется.
Я хочу видеть в результате синхронных языков, таких как java.
Вопросы от синхронного узла.js
Я хочу, чтобы эти результаты:
100-elements
commit
100-elements
commit
100-elements
commit
100-elements
commit
Однако, в настоящее время код получает эти результаты:
100-elements
100-elements
100-elements
100-elements
100-elements
.
.
.
.
100-elements
commit
commit
commit
commit
commit
commit
commit
.
.
.
.
commit
Как я могу получить эти результаты? Пожалуйста, помогите мне. Спасибо.
mysql.getConnection(function(err, connection){
if(err){ connection.release(); return; }
var array = [];
var count = 300000;
var length = count;
for(var i=0; i<count; i++){
(function(currentI, master){
process.nextTick(function(){
array.push([currentI, master]);
if(currentI % 5000 === 0){
console.log('100-elements');
array = [];
connection.beginTransaction(function(err){
if(err){
throw err;
}
var query = "insert into users(username, password) values ?";
connection.query(query, [array], function (err, rows) {
if (!err) {
//commit start
connection.commit(function(){
if (err) {
console.error(err);
connection.rollback(function() {
console.error('rollback error');
throw err;
});
} else {
console.log("Commit");
}//if err
}); //commit end
} else {
console.log(err);
connection.rollback(function(){
throw err;
});
} // if
}) // cnnection query
}); // beginTransaction
} //if
});
}(i, 'master'));
} //for
}) // getConnection
@deathquin - это ответ на ваш вопрос? – jfriend00
У меня нет вопросов Спасибо! – deathquin
@deathquin - тогда процедура здесь, в StackOverflow, заключается в том, что если вы получите хороший ответ, вы можете принять этот ответ, установив зеленую галочку слева от лучшего ответа.Это заработает несколько точек репутации как для человека, предоставляющего ответ (в качестве вознаграждения за помощь вам), так и за вас (за хорошую работу здесь). Позже (когда вы заработали больше очков репутации), вы можете повысить все ответы, которые вам помогли. – jfriend00