com.informix.jdbc

## Interface IfmxStatement

All Superinterfaces:
  java.lang.AutoCloseable, java.sql.Statement, java.sql.Wrapper

All Known Implementing Classes:
  IfxCallableStatement, IfxPreparedStatement, IfxStatement

    public interface IfmxStatement
    extends java.sql.Statement

The IfmxStatement interface contains Informix extensions to the standard JDBC Statement interface.

See Also:
  `Connection.createStatement()`, `Statement`, `ResultSet`

### Field Summary

### Fields inherited from interface java.sql.Statement

`CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO`

### Method Summary

All Methods Instance Methods Abstract Methods
`java.sql.ResultSet` `executeQuery(java.lang.String sql, boolean withHold)` An Informix extension to execute an SQL statement that returns a single ResultSet.
`boolean` `getAutoFree()` An Informix extension that returns the current autofree mode of this statement.
`long` `getBigSerial()` An Informix extension that returns the bigserial value of the last row inserted.
`int` `getFetchBufferSize()` returns the fetch buffer size if set for this statement object
`int` `getSerial()` An Informix extension that returns the serial value of the last row inserted.
`long` `getSerial8()` An Informix extension that returns the serial8 value of the last row inserted.
`int` `getStatementType()` An Informix extention to return the statement type returned by preparing the SQL statement.
`void` `setAutoFree(boolean flag)` An Informix extension that allows the user to set the autofree property for this statement.
`void` `setFetchBufferSize(int bufferSize)` An Informix extension that sets the buffer size for this Statement object for fetch operation This value will override any FET_BUF_SIZE connection level property and is useful when OPTOFC property is set Server will use this value as hint to determin the maximum buffer size to send the data to the clients.

### Methods inherited from interface java.sql.Statement

`addBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout`

### Methods inherited from interface java.sql.Wrapper

`isWrapperFor, unwrap`

### Method Detail

#### getSerial

    int getSerial()
           throws java.sql.SQLException

An Informix extension that returns the serial value of the last row inserted.

Returns:
  The serial value of the last row inserted. If no rows were inserted, returns 0.
Throws:
  `java.sql.SQLException`

#### getSerial8

    long getSerial8()
             throws java.sql.SQLException

An Informix extension that returns the serial8 value of the last row inserted.

Returns:
  The serial8 value of the last row inserted. If no rows were inserted, returns 0.
Throws:
  `java.sql.SQLException`

#### setAutoFree

    void setAutoFree(boolean flag)

An Informix extension that allows the user to set the autofree property for this statement. The resource for this statement is immediately released after the statement is executed. If the statement is a query, the resource is released after the last row is fetched.

Parameters:
  `flag` - Indicates whether the autofree property is true (set) or false.

#### getAutoFree

    boolean getAutoFree()

An Informix extension that returns the current autofree mode of this statement.

Returns:
  the autofree value of this statement: true (set) or false.

#### executeQuery

    java.sql.ResultSet executeQuery(java.lang.String sql,
                                    boolean withHold)
                             throws java.sql.SQLException

An Informix extension to execute an SQL statement that returns a single ResultSet. The statement is executed with a hold cursor that spans across the transaction boundary.

Parameters:
  `sql` - The SQL statement.
  `withHold` - Specifies whether the cursor has a hold or not.
Returns:
  the table of data produced by the SQL statement.
Throws:
  `java.sql.SQLException`

#### getStatementType

    int getStatementType()

An Informix extention to return the statement type returned by preparing the SQL statement. The number returned by this method can be deciphered by looking into the IfxStatementTypes.java file that is now exported to the user.

Returns:
  the statement type id

#### getBigSerial

    long getBigSerial()
               throws java.sql.SQLException

An Informix extension that returns the bigserial value of the last row inserted.

Returns:
  The bigserial value of the last row inserted. If no rows were inserted, returns 0.
Throws:
  `java.sql.SQLException`

#### setFetchBufferSize

    void setFetchBufferSize(int bufferSize)

An Informix extension that sets the buffer size for this Statement object for fetch operation This value will override any FET_BUF_SIZE connection level property and is useful when OPTOFC property is set Server will use this value as hint to determin the maximum buffer size to send the data to the clients.

Parameters:
  `bufferSize` - : number of bytes not exceeding 2GB
Throws:
  `java.sql.SQLException`
Since:
  4.10.JC3

#### getFetchBufferSize

    int getFetchBufferSize()

returns the fetch buffer size if set for this statement object

Returns:
Since:
  4.10.JC3