public void eachRow(GString gstring, @ClosureParams(value=SimpleType.class, options="groovy.sql.GroovyResultSet") Closure closure) throws SQLException {
        eachRow(gstring, null, closure);
    }
public void eachRow ( GString gstring , @ ClosureParams ( value = SimpleType . class , options = "groovy.sql.GroovyResultSet" ) Closure closure ) throws SQLException { eachRow ( gstring , null , closure ) ; }
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 GString expressions.
<p>
Example usage:
<pre>
def location = 25
sql.eachRow("select * from PERSON where location_id {@code <} $location") { row {@code ->}
println row.firstname
}
</pre>
<p>
Resource handling is performed automatically where appropriate.

@param gstring a GString containing the SQL query with embedded params
@param closure called for each row with a GroovyResultSet
@throws SQLException if a database access error occurs
@see #expand(Object)