10

次のレポートを実行していますが、エラーが発生します

/* Simple table formatting */

clear screen;
accept Report_File char prompt 'Enter a file name for summary report ';

/*Set up column headers*/
col StoreCode format A8 heading 'Store Code';
col DESCRIPTION format A8 heading 'Item Description';
col PRICE format $999999.99 heading 'Price';
col QUANTITY format 999 heading 'Quantity';
col (Price*Quantity) format $999999.99 heading 'Value';

/*Format and title pages */

set Pause off;
set Feedback off;
set Space 6;
set newpage 2;
set pagesize 54;
set linesize 200;
set underline =;
title center 'Current Stock Value by Store' skip 2 left -
            'prepared by Jason Kemeys' &Report_Officer right -
            &Todays_Date skip4;
btitle center format 999 SQL.PNO;

/* Set breaks and computes */

break on StoreCode skip 2 on SuppCode skip 1 on Report;
compute sum of (Price*Quantity) on StoreCode;
compute sum of (Price*Quantity) on Report;

/*Select data & send to file*/

spool &Report_File;

select StoreCode, Description, Quantity, Price, (Price*Quantity)
from Stocks
order by StoreCode;

spool off;

/* Clear all settings */

clear breaks;
clear columns;
clear computes;
set Pause on;

エラーが表示される理由と実行方法を知る必要があります。SQLで初めてレポートを作成します。

これは私が得ているエラーです

クリアスクリーン; * 2 行目のエラー: ORA-00900: SQL ステートメントが無効です

4

4 に答える 4

25

cl scrSQL で画面をクリアするために使用されるコマンドです。

于 2014-12-23T12:43:10.357 に答える
10

これは、使用している Oracle のバージョンに依存していると思われます。

これはバージョン 11.2 で動作するはずですが、 10g のドキュメントから引用するには:

CLEAR SCREEN は SQL*Plus では使用できません。

11.1のドキュメントには同じ注記がありません。これは、Oracle 10g 以前を使用していることを意味します。この仮定が正しければ、あなたにできることはほとんどありません。

SQL*Plus のコマンドを使用して、Windows を使用している場合は を、Linux を使用している場合は を実行できる可能がありますが、まったく同じ効果があるかどうかはわかりません。可能であれば、次のようになります。hostclsclear

host cls

hostは、SQL*Plus からオペレーティング システム コマンドを実行するため、画面をクリアするように見えます。

于 2012-12-01T23:26:08.570 に答える
0

「;」の出現はほとんどありません。あなたのコードでは実際に必要です。たとえば、最初の「画面をクリア」コマンドには、セミコロンは必要ありません。追加すると機能しますが、同じファイル内の後続のすべてのコマンドについてはわかりません。それらを必要とするコマンドは、INSERT、UPDATE、DELETE、COMMIT、ROLLBACK などに限定されます。

第 2 に、SQL ファイルから奇妙なフィードバックを受け取り、それらを Linux/Unix 以外で記述した場合、これはしばしば SQLPLUS で目に見えない文字について不平を言うことになります。VI コマンドと CAT コマンドの両方を使用してそのファイルを調べ、奇妙な点に注意してください。

于 2014-11-25T20:15:44.510 に答える