错误:Resultset没有列1

时间:2013-01-09 00:11:03

标签: google-apps-script google-cloud-sql

使用JDBC服务连接到Google Cloud SQL并按照example of the overview一切正常工作。

当我尝试执行其他SQL语句时,如select database();,我收到错误: Resultset没有第1列 < /强>

这是我正在使用的代码。

var sqlStatement = "select database();";
var pstmt = conn.prepareStatement(sqlStatement);
var rs = pstmt.executeQuery(sqlStatement);  
app.add(app.createLabel(rs.getString(1)));

我也试过getObject(),但它确实变得更好。

那么如何处理sqlStatements的任何想法,教程或示例都不同于use database
select database()等典型选择?

2 个答案:

答案 0 :(得分:1)

您缺少启动迭代器的语句 - 这是记录集上的.next()调用。这是一个适合我的功能。我只是使用Logger在这里记录数据库名称,但同样适用于UiApp。

function simpleRead() {
  var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://arunnagarajan:...");
  var stmt = conn.createStatement();
  var rs = stmt.executeQuery("select database()");
  rs.next(); //if you expect multiple rows, then do this in while(rs.next()) loop
  Logger.log(rs.getString(1));
  rs.close();
  stmt.close();
  conn.close();
}

答案 1 :(得分:0)

在最后一行,尝试

app.add(app.createLabel(rs.getString(0)));