• 検索結果がありません。

SQL トレース情報,パラメタトレース情 報,および SQL 単位情報の表示

ドキュメント内 TP1/EE/Extended Data Cache 使用の手引 (ページ 176-182)

WORK:

7   運用

7.5  SQL トレース情報,パラメタトレース情 報,および SQL 単位情報の表示

7.5 SQL トレース情報,パラメタトレース情

6 オペレーショ ンコード

オペレーションコードには,次に示す情報が表示されます。

CC:カーソルのクローズ

ED:SQL実行(実行準備と実行)

EX:SQL実行,またはカーソルのオープン

FT:FETCH

PR:SQL実行準備

一つのSQLに対して,複数のオペレーションコードが表示されます。SQL とオペレーションコードの対応については,「表7-5 SQL文とオペレーショ ンコードの対応」を参照してください。

7 文ハンドル番

SQLとの対応を確認するための番号が表示されます。

8 SQLCODE SQLCODEが表示されます。

9 SQLWARN 発生した警告情報が表示されます。警告フラグが設定されているものには'W'

を,設定されていないものには空白が表示されます。表示例を次に示します。

(例1)SQLWARN3SQLWARN6が発生した場合 警告情報の内容

表示内容

'W△△W△△W△△△△△△△△△'  (凡例)△:空白

(例2)警告がない場合 警告情報の内容

表示内容

'△△△△△△△△△△△△△△△△'  (凡例)△:空白

10 SQL実行要求 受け付け時刻

SQLの実行要求受け付け時刻がyyyy/mm/dd hh:mm:ss mmm.mmmの形式で 表示されます。

11 SQL実行要求 終了時刻

SQLの実行要求終了時刻がyyyy/mm/dd hh:mm:ss mmm.mmmの形式で表示 されます。

表示される項

説明

7-5 SQL

文とオペレーションコードの対応

(凡例)

−:該当しません。

12 SQL オペレーションコードがPRまたはEDの場合に,SQLのテキストが表示さ れます。

XDBサービス定義のxdb_sql_text_sizeオペランドに指定したサイズ分ま で,SQLのテキストが表示されます。

*SQL*のあとにSQLのテキストが表示されます。

オペレーションコードPR,EDがエラーの場合も,SQLのテキストが表示 されます。

埋め込み変数が含まれる場合は,埋め込み変数の部分が?に置き換えられ て表示されます。ただし,1SELECT文のINTO句は表示されません。

カーソルを使用した検索の場合,カーソルのオープンに対応するオペレー ションコードPRのあとに,SQLのテキストが表示されます。このとき,

DECLARE カーソル名 CURSOR FOR の部分は表示されません。

SQL文中に表示できない文字(シフトJISとして不当な文字)がある場合 でも,SQLのテキストとして表示されます。

13 パラメタト レース情報

パラメタトレース情報が表示されます。表示される内容については,「7.5.3  パラメタトレース情報に表示される項目」を参照してください。

14 SQL実行時間 SQLの実行時間がマイクロ秒単位でhh:mm:ss mmm.mmmの形式で表示さ れます。

項番 SQL オペレーションコード 備考

1 CLOSE CC

2 DELETE PR,EX 埋め込み変数の指定がある場合に出力されます。

3 ED 埋め込み変数の指定がない場合に出力されます。

4 FETCH FT

5 INSERT PR,EX 埋め込み変数の指定がある場合に出力されます。

6 ED 埋め込み変数の指定がない場合に出力されます。

7 OPEN PR,EX

8 SELECT PR,EX,FT,FT,…,

CC

EX後にエラーが発生した場合,CCを出力しま す。ただし,暗黙的にトランザクションが取り消 された場合は,CCは出力されません。

9 1

SELECT

PR,EX,FT,FT,CC 最初のFTで取り出すデータがない場合は,2番目 FTは出力されません。

EX後にエラーが発生した場合,CCを出力しま す。ただし,暗黙的にトランザクションが取り消 された場合は,CCは出力されません。

10 UPDATE PR,EX 埋め込み変数の指定がある場合に出力されます。

11 ED 埋め込み変数の指定がない場合に出力されます。

表示される項

説明

7.5.3 パラメタトレース情報に表示される項目

パラメタトレース情報に表示される項目を次の表に示します。

7-6 パラメタトレース情報に表示される項目

7-7 COD,LEN

に出力される値

(凡例)

m,n:正の整数 p:0,2,4,または 6

注※

項番 表示される項目 説明

1 NO パラメタ番号が表示されます。SQL文中に指定した順に1から番号が割り 当てられます。

2 COD データ型のコードが表示されます。詳細については,「表7-7 COD,LEN に出力される値」を参照してください。

3 LEN データの長さが表示されます。詳細については,「表7-7 COD,LEN 出力される値」を参照してください。

4 IND 標識変数の値が表示されます。

5 DATA データ(ダンプ形式)が表示されます。

「表7-7 COD,LENに出力される値」のCODに対応するデータ型の形式 で出力されます。各データ型のデータ形式については,マニュアル「TP1/

EE/Extended Data Cache SQLプログラミング」の「データ型」を参照し てください。

ROWに対応するパラメタの場合は,データの先頭から行長分出力されま す。

項番 データ型 COD LEN

1 INTEGER f1 4

2 DECIMAL(m,n) e5 m,n

3 SMALLINT f5 2

4 CHARACTER(n) c5 n

5 VARCHAR(n) c1 n

6 TIMESTAMP(p) 7d p0の場合:7

p2の場合:8

p4の場合:9

p6の場合:10

7 ROWID 4d 12

8 ROW 45 対応する行の長さ

なお,パラメタトレース情報の出力サイズの上限を

XDB

サービス定義の

xdb_sql_param_size

オペランド(省略値は

256

バイト)で指定できます。上限を超えた 部分のパラメタトレース情報は切り捨てられます。

(1) パラメタトレース情報の出力例

パラメタトレース情報の出力例を次に示します。

(a)INSERT文の場合の出力例

説明

INTEGER

および

CHAR(10)

のデータを

INSERT

文で挿入する場合のパラメタト レース情報の出力例です。変数の指定順に出力されます。

xdb_sql_param_trace=OUT

を指定した場合は出力されません。

*INPRM*

は入力パラメタ情報です。挿入値に指定した変数の情報が出力されま す。

VARCHAR

型の場合,DATAの先頭

2

バイトはデータ長領域となります。実デー タ長+データ長領域のサイズ分出力されます。ただし,実データ長が

-1

以下また は定義長を超えている場合は,定義長+データ長領域のサイズ分出力されます。

標識変数がマイナス値の場合は,"DATA="まで表示されます。

同じデータの出力が

2

行以上続く場合は,

"--- SAME x LINES ---"

が出力されます

(xは省略した行数)。

(b) 検索の場合の出力例

説明

OPEN

文および

FETCH

文を使用して検索する場合の,パラメタトレース情報の出 力例です。

*SQL*

INSERT INTO TBL01(C1,C2) VALUES(?,?) :

*INPRM* NO= 1 COD=f1 LEN= 4 IND= 0

DATA=64 00 00 00 *d... *

*INPRM* NO= 2 COD=c5 LEN= 10 IND= 0

DATA=61 61 61 62 62 62 63 63 63 20 *aaabbbccc * :

*SQL*SELECT * FROM TBL01 WHERE C1=?

:

*INPRM* NO= 1 COD=f1 LEN= 4 IND= 0

DATA=64 00 00 00 *d... * :

*OUTPM* NO= 1 COD=f1 LEN= 4 IND= 0

DATA=64 00 00 00 *d... *

*OUTPM* NO= 2 COD=c5 LEN= 10 IND= 0

DATA=61 61 61 62 62 62 63 63 63 20 *aaabbbccc * :

*INPRM*

は入力パラメタ情報です。WHERE句に指定した変数の情報が出力さ れます。

*OUTPM*

は検索データ情報です。FETCH文で取得した検索データの情報が出 力されます。

FETCH

文の

SQLCODE

0

以外の場合,検索データのパラメタトレース情報は 出力されません。

xdb_sql_param_trace=OUT

を指定した場合,入力パラメタ情報は出力されません。

また,xdb_sql_param_trace=INを指定した場合,検索データ情報は出力されませ ん。

7.5.4 SQL 単位情報に表示される項目

SQL

単位情報に表示される項目を次に示します。

処理行数

作業表作成回数

作業表削除回数

アクセスパス情報サイズ1

表定義情報サイズ1,※2 注※

1

SQL

プール機能によって

SQL

の前処理結果が再利用された場合は

0

が表示されま す。

注※

2

アクセスパス情報の生成時に確保した表定義情報のサイズです。

SQL

単位情報の表示形式については,「10.運用コマンド」の「eexdbed(XDBトレー ス情報の表示)」を参照してください。

7.5.5 留意事項

SQL

トレース情報および

SQL

単位情報取得時の留意事項を次に示します。

SQL

エラーや警告情報が

SQL

トレース情報に出力される場合,XDBは

SQLCODE

または

SQLWARN

を個別に取得することがあります。この場合,SQLトレース情報 に,SQL実行要求受け付け時刻,SQL実行要求終了時刻,および

SQL

実行時間が出 力されません。例えば,次の場合に,これらの情報が出力されません。

1

SELECT

文で検索結果が

2

行以上になった場合

SQL

連絡領域の

SQLWARN3

に警告フラグ

'W'

が設定された場合 なお,この場合,SQL単位情報とアクセスパス情報は出力されません。

ドキュメント内 TP1/EE/Extended Data Cache 使用の手引 (ページ 176-182)