Package groovy.sql

# Class Sql.AbstractQueryCommand

java.lang.Object
groovy.sql.Sql.AbstractQueryCommand

Enclosing class:
  Sql

    protected abstract class Sql.AbstractQueryCommand
    extends java.lang.Object

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected java.lang.String` | `sql` |
  `protected java.sql.Statement` | `statement` |

- ## Constructor Summary

  Constructors
  Modifier | Constructor | Description
  --- | --- | ---
  `protected` | `AbstractQueryCommand​(java.lang.String sql)` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected void` | `closeResources()` | After performing the execute operation and making use of its return, it's necessary to free the resources allocated for the statement.
  `protected void` | `closeResources​(java.sql.ResultSet rs)` | After performing the execute operation and making use of its return, it's necessary to free the resources allocated for the statement.
  `protected java.sql.ResultSet` | `execute()` | Execute the command that's defined by the subclass following the Command pattern.
  `protected int` | `getMaxRows()` | Get the maximum number of rows to return in the ResultSet
  `protected abstract java.sql.ResultSet` | `runQuery​(java.sql.Connection connection)` | Perform the query.
  `protected void` | `setMaxRows​(int maxRows)` | Set the maximum number of rows to return in the ResultSet

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### sql

    protected final java.lang.String sql

  - ### statement

    protected java.sql.Statement statement

- ## Constructor Details

  - ### AbstractQueryCommand

    protected AbstractQueryCommand​(java.lang.String sql)

- ## Method Details

  - ### execute

    protected final java.sql.ResultSet execute() throws java.sql.SQLException
    Execute the command that's defined by the subclass following the Command pattern. Specialized parameters are held in the command instances.
    Returns:
      ResultSet from executing a query
    Throws:
      `java.sql.SQLException` - if a database error occurs

  - ### closeResources

    protected final void closeResources()
    After performing the execute operation and making use of its return, it's necessary to free the resources allocated for the statement.

  - ### closeResources

    protected final void closeResources​(java.sql.ResultSet rs)
    After performing the execute operation and making use of its return, it's necessary to free the resources allocated for the statement.
    Parameters:
      `rs` - allows the caller to conveniently close its resource as well

  - ### runQuery

    protected abstract java.sql.ResultSet runQuery​(java.sql.Connection connection) throws java.sql.SQLException
    Perform the query. Must set statement field so that the main (`execute()`) method can clean up. This is the method that encloses the variant part of the code.
    Parameters:
      `connection` - the connection to use
    Returns:
      ResultSet from an executeQuery method.
    Throws:
      `java.sql.SQLException` - if a database error occurs

  - ### setMaxRows

    protected void setMaxRows​(int maxRows)
    Set the maximum number of rows to return in the ResultSet
    Parameters:
      `maxRows` - the maximum number of rows

  - ### getMaxRows

    protected int getMaxRows()
    Get the maximum number of rows to return in the ResultSet
    Returns:
      the maximum number of rows