Я использую stream.pause () и stream.resume (), чтобы получить 10 тыс. Строк из mssql и отправить их, а затем возобновить процесс извлечения.Для отправки 10 тыс. Строк я выполняю обещание.Но отправляется только первая партия из 10 тыс. Строк.Дальнейшие строки не отправляются, поскольку они разрешаются один раз.Как использовать обещание для отправки строк каждый раз, когда поток приостановлен?Может ли кто-нибудь помочь мне в этом?Вот мой код.
return new Promise((resolve, reject)=>{
var request = new sql.Request(dbConn);
request.stream = true;
console.log('query>>>>>>>>>>>')
request.query(SPQuery);
let rowsToProcess = [];
request.on('row', row => {
rowsToProcess.push(row);
if (rowsToProcess.length === 10000) {
resolve(rowsToProcess)
request.pause();
processRows();
}
});
request.on('done', () => {
processRows();
});
function processRows() {
// process rows
rowsToProcess = [];
request.resume();
} });