SYSIBM.SYSPACKSTMT table
The SYSIBM.SYSPACKSTMT table contains one or more rows for each statement in a package.
Column name | Data type | Description | Use |
LOCATION |
|
Always contains blanks |
S |
COLLID |
|
Name of the package collection. |
G |
NAME |
|
Name of the package. |
G |
CONTOKEN |
CHAR(8)
NOT NULL
FOR BIT DATA
|
Consistency token for the package. This is either:
- The "level" as specified by the LEVEL option when the package's program was precompiled
- The timestamp indicating when the package's program was precompiled, in an internal format
|
S |
SEQNO |
|
Not used. |
G |
STMTNO |
|
The statement number of the statement in the source program. A statement number greater than 32767 is stored as zero1 or as a negative number2. If the value is zero, see STMTNOI for the statement number. |
G |
SECTNO |
|
The section number of the statement.2 |
G |
BINDERROR |
|
Whether an SQL error was detected at bind time:- N
- No
- Y
- Yes
|
G |
IBMREQD |
|
A value of Y indicates that the row came from the basic machine-readable material (MRM) tape. For all other values, see Release dependency indicators.
The value in this field is not a reliable indicator of release dependencies.
|
G |
VERSION |
|
Version identifier for the package. |
G |
|
VARCHAR(3500)
NOT NULL WITH
DEFAULT
FOR BIT DATA
|
Internal use only. |
I |
ISOLATION |
CHAR(1)
NOT NULL WITH
DEFAULT
|
Isolation level for the SQL statement: - R
- RR (repeatable read)
- T
- RS (read stability)
- S
- CS (cursor stability)
- U
- UR (uncommitted read)
- L
- RS isolation, with a lock-clause
- X
- RR isolation, with a lock-clause
- blank
- The WITH clause was not specified on this statement. The isolation level is recorded in SYSPACKAGE.ISOLATION and in SYSPLAN.ISOLATION.
|
G |
STATUS |
CHAR(1)
NOT NULL WITH
DEFAULT
|
Status of binding the statement:- A
- Distributed - statement uses DB2® private protocol access. The statement will be parsed and executed at the server using defaults for input variables during access path selection.
- B
- Distributed - statement uses DB2 private protocol access. The statement will be parsed and executed at the server using values for input variables during access path selection.
- C
- Compiled - statement was bound successfully using defaults for input variables during access path selection.
- D
- Distributed - statement references a remote object using a three-part name. DB2 will implicitly use DRDA® access either because the DBPROTOCOL bind option was not specified (defaults to DRDA), or the bind option DBPROTOCOL(DRDA) was explicitly specified. This option allows the use of three-part names with DRDA access but it requires that the package be bound at the target remote site.
- E
- Explain - statement is an SQL EXPLAIN statement. The explain is done at bind time using defaults for input variables during access path selection.
- F
- Parsed - statement did not bind successfully and VALIDATE(RUN) was used. The statement will be rebound at execution time using values for input variables during access path selection.
- G
- Compiled - statement bound successfully, but REOPT is specified. The statement will be rebound at execution time using values for input variables during access path selection.
- H
- Parsed - statement is either a data definition statement or a statement that did not bind successfully and VALIDATE(RUN) was used. The statement will be rebound at execution time using defaults for input variables during access path selection. Data manipulation statements use defaults for input variables during access path selection.
- I
- Indefinite - statement is dynamic. The statement will be bound at execution time using defaults for input variables during access path selection.
|
S |
STATUS (cont.) |
|
- J
- Indefinite - statement is dynamic. The statement will be bound at execution time using values for input variables during access path selection.
- K
- Control - CALL statement.
- L
- Bad - the statement has some allowable error. The bind continues but the statement cannot be executed.
- M
- Parsed - statement references a table that is qualified with SESSION and was not bound because the table reference could be for a declared temporary table that will not be defined until the package or plan is run. The SQL statement will be rebound at execution time using values for input variables during access path selection.
- O
- Compiled for acceleration. The static query was bound successfully for acceleration and will be routed to an accelerator when executed.
- blank
- The statement is non-executable, or was bound in a DB2 release prior to Version 5.
|
|
ACCESSPATH |
CHAR(1)
NOT NULL WITH
DEFAULT
|
For static statements, indicates if the access path for the statement is based on user-specified optimization hints:- H
- Optimization hints were used.
- A
- The access path was reused because of the APREUSE bind option.
- blank
- One of the following situations:
- The access path was determined without the use of hints, and a previous access path was not reused.
- No access path is associated with the statement.
- The statement is a dynamic SQL statement
|
G |
STMTNOI |
INTEGER
NOT NULL WITH
DEFAULT
|
If the value of STMTNO is zero, the column contains the statement number of the statement in the source program. If both STMTNO and STMTNOI are zero, the statement number is greater than 32767. |
G |
SECTNOI |
INTEGER
NOT NULL WITH
DEFAULT
|
The section number of the statement. |
G |
EXPLAINABLE |
CHAR(1)
NOT NULL WITH
DEFAULT
|
Contains one of the following values:- Y
- Indicates that the SQL statement can be used with the EXPLAIN function and might have rows describing its access path in the owner.PLAN_TABLE.
- N
- Indicates that the SQL statement does not have any rows describing its access path in the owner.PLAN_TABLE.
- blank
- Indicates that the SQL statement was bound prior to Version 7.
|
G |
QUERYNO |
INTEGER
NOT NULL WITH
DEFAULT –1
|
The query number of the SQL statement in the source program. SQL statements bound prior to Version 7 have a default value of –1. Statements bound in Version 7 or later use the value specified on the QUERYNO clause on SELECT, UPDATE, INSERT, DELETE, EXPLAIN, DECLARE CURSOR, or REFRESH TABLE statements. If the QUERYNO clause is not specified, the query number is set to the statement number. |
G |
ROWID |
ROWID
NULL GENERATED
ALWAYS
|
ROWID column, created for the lob columns in this table. |
G |
STMT_ID |
|
A unique statement identifier. |
G |
STATEMENT |
CLOB(2M)
NOT NULL
WITH DEFAULT
|
The complete text for the SQL statement that the row represents. |
G |
|
BLOB(2M)
NOT NULL
WITH DEFAULT
|
Internal use only. |
I |
1 Rows in which the value of SEQNO, STMTNO, and SECTNO are zero are for internal use.
2 To convert a negative STMTNO to a meaningful statement number that corresponds to your precompile output, add 65536 to it. For example, -26472 is equivalent to +39064 (-26472 + 65536).