code: public void eachRow(String sql, List<Object> params,
                          @ClosureParams(value=SimpleType.class, options="groovy.sql.GroovyResultSet") Closure closure) throws SQLException {
          eachRow(sql, params, null, closure);
      }
docs: Performs the given SQL query calling the given Closure with each row of the result set.
  The row will be a <code>GroovyResultSet</code> which is a <code>ResultSet</code>
  that supports accessing the fields using property style notation and ordinal index values.
  The query may contain placeholder question marks which match the given list of parameters.
  <p>
  Example usage:
  <pre>
  sql.eachRow("select * from PERSON where lastname like ?", ['%a%']) { row {@code ->}
  println "${row[1]} $row.lastname"
  }
  </pre>
  <p>
  Resource handling is performed automatically where appropriate.
  
  @param sql     the sql statement
  @param params  a list of parameters
  @param closure called for each row with a GroovyResultSet
  @throws SQLException if a database access error occurs