目的
この制御によって、ユーザーは、データを返すSQL文からのフィールド モード応答の後に出力される空白行の数を指定できます。
デフォルトでは、BTEQはSHOWおよびCOMMENTステートメントからの応答の後に余分な空白行を出力します。これらは、後続のリクエストからの出力と区切るための可視視線誘導標として機能します。ただし、フィールド モードでエクスポートすると、これらの余分な空白行は空のレコードとみなされます。新しいコマンドTRAILINGLINESを使用すると、これらの余分な空白行の出力を制御できます。
構文
構文規則:
- DEFAULT
- これは初期デフォルト値です。SHOWステートメントの場合、DBSが改行で終了する応答を返すかどうかに応じて、BTEQは応答の後に1行または2行の空白行を出力します。SHOW以外のステートメント(SELECT、HELPなど)の場合、BTEQは応答の後に空白行を出力しません。
- BETWEEN
- BTEQは、データを返すすべてのSQL文からの一連の結果行の間に、指定された数の空白行を出力します。これは、マルチステートメントのリクエストで使用できます。空白行は中間の結果にのみ追加され、最後のステートメントの応答の後に余分な空白行が続くことはありません。
- AFTER
- BTEQは、データを返すすべてのステートメントからの一連の結果行の後に、指定された数の空白行を出力します。
- n
- 出力する空白行の数を示す、0~2147483647の範囲の正の数値。
使用上の注意
TRAILINGLINESコマンドは、フィールド モードの応答に対してのみ有効であり、EXPORT DATA/INDICDATAには影響しません。
TRAILINGLINESコマンドを使用して、フィールド モードの応答の後の可視視線誘導標として機能する空白行の数を構成します。この空白行は、関連付けられているステートメントがデータを返す場合にのみ出力されます。
FORMAT ONが使用されていて、FOOTINGが設定されている場合に、現在のページ長に従って、書式設定された出力のページがヘッダーとフッターの文字列を使用して区切られます。TRAILINGLINESコマンドの影響は受けません。
SET DEFAULTSコマンドは、TRAILINGLINESをDEFAULTにリセットします。
TRAILINGLINESコマンドが、SKIPLINE、SKIPDOUBLEなどの他の書式設定コマンドと一緒に使用されている場合に、行データによっては空白行が生成されることもあります。ユーザーは、表形式の結果視線誘導標ではなくデータである空白行が表示されるように、データの表示形式に責任を持つ必要があります。
TRAILINGLINESコマンドは、Teradata SQLマクロで使用できます。
例1 – TRAILINGLINES AFTER 3
データを返すすべてのステートメントの後に正確に3行の空白行を出力するには、次のコマンドを使用します。.SET TRAILINGLINES AFTER 3 .EXPORT REPORT FILE = repfile1 .SET WIDTH 90 SHOW VIEW dbc.dbcinfo; SELECT 'aaaa'; .EXPORT RESET
出力: (repfile1の内容)
REPLACE VIEW DBC.DBCInfo AS SELECT InfoKey, CAST(SUBSTRING(TRANSLATE(InfoData USING UNICODE_TO_LOCALE WITH ERROR) FROM 1 FOR 16384) AS VARCHAR(16384)) (NAMED InfoData) FROM DBC.DBCInfoTbl WITH CHECK OPTION; 'aaaa' ------ aaaa
例2 – TRAILINGLINES BETWEEN 3
マルチステートメント リクエストでデータを返すすべてのステートメントの間に正確に3行の空白行を出力するには、次のコマンドを使用します。
.SET TRAILINGLINES BETWEEN 3 .EXPORT REPORT FILE = repfile2 .SET WIDTH 90 SHOW VIEW dbc.dbcinfo ;SELECT 'aaaa'; .EXPORT RESET
REPLACE VIEW DBC.DBCInfo AS SELECT InfoKey, CAST(SUBSTRING(TRANSLATE(InfoData USING UNICODE_TO_LOCALE WITH ERROR) FROM 1 FOR 16384) AS VARCHAR(16384)) (NAMED InfoData) FROM DBC.DBCInfoTbl WITH CHECK OPTION; 'aaaa' ------ aaaa
例3 – TRAILINGLINES AFTER 0 (バックドア エクスポートで)
バックドア エクスポートで、データを返すステートメントに対する余分な空白行の出力を禁止するには、次のコマンドを使用します。
.SET TRAILINGLINES AFTER 0 .EXPORT DATA FILE = repfile3 .SET RECORDMODE OFF .SET WIDTH 90 SHOW VIEW dbc.dbcinfo ;SELECT 'aaaa'; SHOW VIEW dbc.dbcinfo; SELECT 'bbbb'; .EXPORT RESET
出力: (repfile3の内容。すべてのステートメントの後に後続行がありません)。
REPLACE VIEW DBC.DBCInfo AS SELECT InfoKey, CAST(SUBSTRING(TRANSLATE(InfoData USING UNICODE_TO_LOCALE WITH ERROR) FROM 1 FOR 16384) AS VARCHAR(16384)) (NAMED InfoData) FROM DBC.DBCInfoTbl WITH CHECK OPTION; aaaa REPLACE VIEW DBC.DBCInfo AS SELECT InfoKey, CAST(SUBSTRING(TRANSLATE(InfoData USING UNICODE_TO_LOCALE WITH ERROR) FROM 1 FOR 16384) AS VARCHAR(16384)) (NAMED InfoData) FROM DBC.DBCInfoTbl WITH CHECK OPTION; bbbb