対話形式のセッションでレコード モードか標識モードのいずれかを使用しているときには、端末画面に表示されるデータの行数を制限する必要がある場合があります。 例えば、BTEQスクリプトやマクロの書式設定部分を作成し、テストする場合には、必ずしもすべてのデータを表示させる必要がない場合もあります。 数行を表示させるだけで、作成した書式設定ステートメントの実行結果を確認できます。
画面に表示されるデータの行数を制限する場合は、次のBTEQコマンドを使用します。
コメント | 関数 |
---|---|
RETCANCEL | このコマンドを使用し、指定した行数が表示されたらリクエストを取り消す。 |
RETLIMIT | RETLIMITのROWSオプションを使用し、端末画面に表示する応答データの行数を指定する。 |
- 応答データの行の制限値(RETLIMIT)を指定し、RETCANCELの制御をOFFにした場合には、指定した制限値に達した時点でデータの表示は中止されます。ただし、リクエストの処理は続行されます。
- RETLIMIT設定のROWSオプションのデフォルト値は、ゼロ、すなわち制限なしです。 応答データの行の制限値を指定せずにRETCANCELをONに設定した場合には、すべてのリクエスト データが検索され、表示されます。
- 応答データがレコード モードか標識モードで返され、その出力先がエクスポート ファイルではなく標準出力ストリームに指定されているときには、応答データは、8進数か16進数のダンプ形式(対応するEBCDIC文字付き)で表現されます。データを返すSQL文の結果の行ごとに、1つのダンプが生成されます。
例 – 表示データ量
次の例では、表示が2行のレコード モードのデータに制限されます。
.Set retlimit 2 .Set recordmode on select * from fml.department;
表示例:
*** Success , Stmt#1, ActivityCount = 5 *** Time was 4.70 seconds. *** Record#1. Dump Of Data: 0000 F401 000B 456E 6769 6E65 6572 696E 6741 *....EngineeringA* 0010 544C 1C27 *TL.'* *** Record#2. Dump Of Data: 0000 BC02 0009 4D61 726B 6574 696E 674E 5943 *....MarketingNYC* 0010 2527 *%'* [*** Warning: RetLimit exceeded. Ignoring the rest of the output.
同様に、次の例では、表示が2行の標識モードのデータに制限されます。
.Set retlimit 2 .Set indicatormode on select * from fml.department;
表示例:
*** Success , Stmt#1, ActivityCount = 5 *** Time was 0.51 second. *** Dump of Parcel DATAINFO: 0000 0400 F401 0200 C101 0E00 C501 0#00 F401 *................* 0010 0200 *..* *** Record#1. Dump Of Data: 0000 00F4 0100 0B45 6E67 696E 6565 7269 6E67 *.....Engineering* 0010 4154 4C1C 27 *ATL.'* *** Record#2. Dump Of Data: 0000 00BC 0200 094D 6172 6B65 7469 6E67 4E59 *.....MarketingNY* 0010 4325 27 *C..*
通常のフィールド モードに戻るためには、次の例に示すように、RECORDMODEコマンドまたはINDICATORMODEコマンドのオプションをOFFにしてから、RETLIMITコマンドのROWSオプションをゼロにリセットします。
.SET RECORDMODE OFF
または
.SET INDICATORMODE OFF
このあとに、次のように入れます。
.SET RETLIMIT 0