Package org.firebirdsql.jdbc

## Interface FirebirdPreparedStatement

- All Superinterfaces:
    `java.lang.AutoCloseable`, `FirebirdStatement`, `java.sql.PreparedStatement`, `java.sql.Statement`, `java.sql.Wrapper`
  All Known Subinterfaces:
    `FirebirdCallableStatement`
  All Known Implementing Classes:
    `FBCallableStatement`, `FBPreparedStatement`

      public interface FirebirdPreparedStatement
      extends FirebirdStatement, java.sql.PreparedStatement

  Firebird extensions to the `PreparedStatement` interface.
  Author:
    Roman Rokytskyy

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `TYPE_COMMIT` | A `COMMIT` statement
    `static int` | `TYPE_DDL` | A DDL statment
    `static int` | `TYPE_DELETE` | A `DELETE` statement
    `static int` | `TYPE_EXEC_PROCEDURE` | An `EXEC PROCEDURE` statement
    `static int` | `TYPE_GET_SEGMENT` | A GET SEGMENT statement
    `static int` | `TYPE_INSERT` | An `INSERT` statement
    `static int` | `TYPE_PUT_SEGMENT` | A PUT SEGMENT statement
    `static int` | `TYPE_ROLLBACK` | A `ROLLBACK` statement
    `static int` | `TYPE_SELECT` | A `SELECT` statement
    `static int` | `TYPE_SELECT_FOR_UPDATE` | A `SELECT FOR UPDATE` statement
    `static int` | `TYPE_SET_GENERATOR` | A `SET GENERATOR` statement
    `static int` | `TYPE_START_TRANS` | A START TRANSACTION statement
    `static int` | `TYPE_UPDATE` | An `UPDATE` statement

    - ### 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
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getExecutionPlan()` | Get the execution plan of this PreparedStatement
    `java.lang.String` | `getExplainedExecutionPlan()` | Get the detailed execution plan of this PreparedStatement
    `int` | `getStatementType()` | Get the statement type of this PreparedStatement.

    - ### Methods inherited from interface org.firebirdsql.jdbc.FirebirdStatement

      `getCurrentResultSet, getDeletedRowsCount, getInsertedRowsCount, getLastExecutionPlan, getLastExplainedExecutionPlan, getLocalStatementId, getUpdatedRowsCount, hasOpenResultSet, isValid`

    - ### Methods inherited from interface java.sql.PreparedStatement

      `addBatch, clearParameters, execute, executeLargeUpdate, executeQuery, executeUpdate, getMetaData, getParameterMetaData, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL`

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

      `addBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, 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, isSimpleIdentifier, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout`

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

      `isWrapperFor, unwrap`

- - ### Field Detail

    - #### TYPE_SELECT

          static final int TYPE_SELECT

      A `SELECT` statement
      See Also:
        Constant Field Values

    - #### TYPE_INSERT

          static final int TYPE_INSERT

      An `INSERT` statement
      See Also:
        Constant Field Values

    - #### TYPE_UPDATE

          static final int TYPE_UPDATE

      An `UPDATE` statement
      See Also:
        Constant Field Values

    - #### TYPE_DELETE

          static final int TYPE_DELETE

      A `DELETE` statement
      See Also:
        Constant Field Values

    - #### TYPE_DDL

          static final int TYPE_DDL

      A DDL statment
      See Also:
        Constant Field Values

    - #### TYPE_GET_SEGMENT

          static final int TYPE_GET_SEGMENT

      A GET SEGMENT statement
      See Also:
        Constant Field Values

    - #### TYPE_PUT_SEGMENT

          static final int TYPE_PUT_SEGMENT

      A PUT SEGMENT statement
      See Also:
        Constant Field Values

    - #### TYPE_EXEC_PROCEDURE

          static final int TYPE_EXEC_PROCEDURE

      An `EXEC PROCEDURE` statement
      See Also:
        Constant Field Values

    - #### TYPE_START_TRANS

          static final int TYPE_START_TRANS

      A START TRANSACTION statement
      See Also:
        Constant Field Values

    - #### TYPE_COMMIT

          static final int TYPE_COMMIT

      A `COMMIT` statement
      See Also:
        Constant Field Values

    - #### TYPE_ROLLBACK

          static final int TYPE_ROLLBACK

      A `ROLLBACK` statement
      See Also:
        Constant Field Values

    - #### TYPE_SELECT_FOR_UPDATE

          static final int TYPE_SELECT_FOR_UPDATE

      A `SELECT FOR UPDATE` statement
      See Also:
        Constant Field Values

    - #### TYPE_SET_GENERATOR

          static final int TYPE_SET_GENERATOR

      A `SET GENERATOR` statement
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getExecutionPlan

          java.lang.String getExecutionPlan()
                                     throws java.sql.SQLException

      Get the execution plan of this PreparedStatement
      Returns:
        The execution plan of the statement
      Throws:
        `java.sql.SQLException`

    - #### getExplainedExecutionPlan

          java.lang.String getExplainedExecutionPlan()
                                              throws java.sql.SQLException

      Get the detailed execution plan of this PreparedStatement
      Returns:
        The detailed execution plan of the statement
      Throws:
        `java.sql.SQLException`

    - #### getStatementType

          int getStatementType()
                        throws java.sql.SQLException

      Get the statement type of this PreparedStatement. The returned value will be one of the `TYPE_*` constant values.
      Returns:
        The identifier for the given statement's type
      Throws:
        `java.sql.SQLException`