web-dev-qa-db-ja.com

列見出しは、Oracle出力全体に表示され続けます

10行が経過すると、列ヘッダーがOracle出力に再表示されます。私のコードまたはこれを停止するために設定できるある種の環境変数について何かありますか?結果の上部に列ヘッダーを1回だけ表示する必要があります。

BREAK ON Customer
COLUMN Customer -
       FORMAT A15 -
       HEADING 'Customer Name'
COLUMN "Charter Date" -
       HEADING 'Charter|Date'
COLUMN Pilot -
       FORMAT A20 -
       HEADING 'Pilot'
SELECT DECODE (cu.cus_initial,null, cu.cus_fname||' '||cu.cus_lname,
       cu.cus_fname||' '||cu.cus_initial||'. '||cu.cus_lname)
       AS Customer,
       ch.char_date "Charter Date",
       TRIM( e.emp_fname) ||' '|| TRIM(e.emp_lname) AS "Pilot"
FROM hartmar.customer cu,
     hartmar.charter ch,
     hartmar.crew cr,
     hartmar.pilot p,
     hartmar.employee e
WHERE cu.cus_code = ch.cus_code
      AND ch.char_trip = cr.char_trip
      AND cr.emp_num = p.emp_num
      AND p.emp_num = e.emp_num
      AND cr.crew_type = 'Pilot'
ORDER BY cu.cus_lname, cu.cus_fname, cu.cus_initial, ch.char_date
;

CLEAR BREAKS
CLEAR COLUMNS
9
smiligrl

これをSQL * Plusで実行していると仮定すると、ページサイズを設定する必要があります。

SET PAGESIZE 50000

列見出しは、返される50,000行ごとに1回だけ表示されます。 50,000が最大PAGESIZE設定だと思います。

ヘッダーを完全に削除したい場合は、PAGESIZEを0に設定できますが、これにより、最初のヘッダーセットも抑制されます。

SQL> set pagesize 0;
SQL> select ename, empno from emp;
PAV              7623
smith            7369
ALLEN            7499
WARD             7521
JONES            7566
MARTIN           7654
BLAKE            7698
CLARK            7782
SCOTT            7788
KING             7839
TURNER           7844
ADAMS            7876
SM0              7900
FORD             7902
MILLER           7934
BAR              1234

16 rows selected.
26
Justin Cave

見出しの最初の行を除くすべてを抑制する「非表示」機能を使用してください!

set pagesize 0 embedded on

上記の https://community.Oracle.com/thread/2389479?start=0&tstart= 経由の「BrunoRuess」に感謝します。

その後、追加する場合

SET UNDERLINE off

次に、ヘッダー行の「下線」を抑制して、CSVによく似たものに到達できます。

15
dsz

あなたもすることができます:

SET PAGESIZE 0

レポートの開始後にすべての列ヘッダーを停止します。

1
Bart K