for循环with if语句将不退出

ig9co6j1  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(343)

我正在尝试创建一个apps脚本项目,从列表中获取mysql查询并执行它们。
列表中最后一个单元格包含单词“exit”。
我的意图是用if中断退出for循环。
它正在处理更新查询并执行它们,但不会退出循环继续
任何指导都将不胜感激。

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);
9lowa7mx

9lowa7mx1#

试试这样的。每个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;
    }
  }

相关问题