Для цикла с оператором IF не выйдет - PullRequest
0 голосов
/ 28 августа 2018

Я пытаюсь создать проект Apps Script, который получает запрос MySQL из списка и выполняет их.

Самая последняя ячейка в списке содержит слово «EXIT».
Мое намерение состоит в том, чтобы выйти из цикла for с If break.

Он обрабатывает запросы на обновление и выполняет их, но не выходит из цикла для продолжения

Любое руководство будет с благодарностью.

Logger.log(ipAddress)
Logger.log(userPassword)
Logger.log(user)
Logger.log(dbUrl)


var connection = Jdbc.getConnection(dbUrl, user, userPassword);
var stmt = connection.createStatement()

Logger.log(connection);

for (var i = 2;; i++) {
    var queryCell = querySheet.getRange(i, 1).getValue();

    Logger.log(queryCell);

    if (queryCell == "EXIT") {
        log.setValue(queryCell);
        break;
    }

    var rs = stmt.executeUpdate(queryCell);
}

rs.close();
stmt.close();
connection.close();
Logger.log("Loop Exited")

var toast = SpreadsheetApp.getActiveSpreadsheet().toast('Complete', 'Status', 10);

var time = new Date();
loadEndCell.setValue(time);

1 Ответ

0 голосов
/ 28 августа 2018

Попробуйте что-нибудь подобное. Каждый getValue () / setValue () является вызовом сервера и может влиять на производительность. Лучше использовать getValues ​​() / setValues ​​().

  var queryData = querySheet.getDataRange().getValues();
  for( var i=1; i<queryData.length; i++ ) {
    Logger.log(queryData[i][0]);
    if( queryData[i][0] === "EXIT" ) {
      break;
    }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...