1
 DECLARE
    data_line   VARCHAR2(200); -- Data line read from input file
    data_file   UTL_FILE.FILE_TYPE; -- Data file handle
    my_dir      VARCHAR2(250); -- Directory containing the data file
    my_filename VARCHAR2(50);


    BEGIN
      my_dir := 'c:\temp';
      my_filename := 'Lab4AData.dat';
      my_file := UTL_FILE.FOPEN(my_dir, my_filename, 'r'); 


    LOOP;
          UTL_FILE.GET_LINE(data_file, data_line);

      EXCEPTION
        WHEN no_data_found THEN
          DBMS_OUTPUT.PUT_LINE('Finished');
          exit;
          END LOOP;
      END;


    /

問題は、この匿名のコード ブロックを開始することさえできないことです。まず、データ ファイルを開いて読み取り、そこからビルドしようとしています。しかし、ファイルを開くことさえできません。

SQL Developerエラー・レポートはすぐに始まります

コマンドの 5 行目から始まるエラー:
宣言する

次に、コード ブロックを繰り返し、これを追加します。

ORA-06550: 12 行目、8 列目:
PLS-00103: 記号";"が見つかりました 次のいずれかを期待する場合:

   ( begin case は goto if loop mod null プラグマの終了を宣言します
   raise return select update while with <an identifier>
   <二重引用符で区切られた識別子> <バインド変数> <<
   継続 クローズ 現在の削除 フェッチ ロック 挿入 オープン ロールバック
   savepoint set sql execute commit forall マージ パイプ パージ
記号「exit」が「;」に置き換えられました。続ける。
ORA-06550: 15 行目、3 列目:
PLS-00103: 次のいずれかを想定しているときに、記号"EXCEPTION"が発生しました:

   ( begin case 宣言 end exit for goto if loop mod null
   pragma raise return select update while with <an identifier>
   <二重引用符で区切られた-i
06550.00000 - "行 %s、列 %s:\n%s"
*原因: 通常、PL/SQL コンパイル エラーです。
*アクション:
4

1 に答える 1