# SYSXPLAIN_STATEMENTS system table

The SYSXPLAIN_STATEMENTS table captures information about statements which have been executed using RUNTIMESTATISTICS with XPLAIN style.

See "Working with RunTimeStatistics" in Tuning Derby for information on how to configure this.

Each row in this table describes a single statement which has been captured. Depending on the precise configuration of the RUNTIMESTATISTICS and XPLAIN features, there may be additional rows in the other XPLAIN system tables with additional information; the STMT_ID and TIMING_ID columns in this table are used to join against those tables.

Rows in this table are added automatically when Derby has been configured appropriately. The rows remain in the table until you delete them or drop the table.

The following table shows the contents of the SYSXPLAIN_STATEMENTS system table.

Table 1. SYSXPLAIN_STATEMENTS system table
Column Name | Type | Length | Nullable | Contents
--- | --- | --- | --- | ---
STMT_ID | CHAR | 36 | false | A unique identifier for this particular captured statement.
STMT_NAME | VARCHAR | 128 | true | The name of the associated query or statement. This value is NULL if the user did not assign a name (by calling java.sql.Statement.setCursorName()).
STMT_TYPE | CHAR | 3 | false | A code indicating what type of statement this is: 'S' for SELECT, 'I' for INSERT, 'U' for UPDATE, 'D' for DELETE, 'C' for CALL, 'DDL' for Data Definition (such as CREATE TABLE), 'SA' for SELECT (Approximate), or blank, indicating the statement was a comment.
STMT_TEXT | VARCHAR | 32,672 | false | The text of the statement.
JVM_ID | VARCHAR | 32,672 | false | A code indicating what version of the JVM was running when this statement was captured. The code is a character that represents the release number plus one. For example, the code for Java SE 6 is '7', and the code for Java SE 7 is '8'.
OS_IDENTIFIER | VARCHAR | 32,672 | false | Contains information about the operating system which was being used when this statement was captured.
XPLAIN_MODE | CHAR | 1 | true | A code indicating the XPLAIN mode which was in use when this statement was captured: 'F' for FULL, or 'O' for ONLY.
XPLAIN_TIME | TIMESTAMP | 29 | true | Contains the date and time when this statement was captured.
XPLAIN_THREAD_ID | VARCHAR | 32,672 | false | The JVM thread which was running when this statement was captured
TRANSACTION_ID | VARCHAR | 32,672 | false | An internal identifier for the transaction which was active when this statement was captured.
SESSION_ID | VARCHAR | 32,672 | false | An internal identifier for the session which was active when this statement was captured.
DATABASE_NAME | VARCHAR | 128 | false | Contains the name of the database which was being used when this statement was captured.
DRDA_ID | VARCHAR | 32,672 | true | In a network environment, this column contains an internal identifier for the network connection which was active when this statement was captured. In an embedded environment, this column is null.
TIMING_ID | CHAR | 36 | true | This field will be NULL unless SYSCS_UTIL.SYSCS_SET_STATISTICS_TIMING has been called to enable statistics timing. If statistics timings are being captured, then this column will contain the ID of the row in SYSXPLAIN_STATEMENT_TIMINGS which records the statement timing for this statement.

Parent topic: XPLAIN style tables