2016-07-30 10 views
0

このスクリプトを機能させることができません。 I_CATEGORYに格納されているすべてのアイテムのアイテム番号、説明、倉庫番号、単価を取得して出力しようとしています。私は、ループとカーソルを閉じて、プロシージャを終了する必要があります。私は3つすべてでPLS-00103を得続けます。Oracle Database 11g Express Editionでカーソルをクローズしたり、ループを終了したり、プロシージャを終了することはできません

CREATE OR REPLACE PROCEDURE DISP_CATEGORY(I_CATEGORY IN ITEM.CATEGORY) AS 

    I_ITEM_NUM ITEM.ITEM_NUM%TYPE; 
    I_DESCRIPTION ITEM.DESCRIPTION%TYPE; 
    I_STOREHOUSE ITEM.STOREHOUSE%TYPE; 
    I_PRICE ITEM.PRICE%TYPE; 

    CURSOR CUSTOMCATEGORY IS 
    SELECT ITEM_NUM, DESCRIPTION, STOREHOUSE, PRICE 
    FROM ITEM 
    WHERE CATEGORY = I_CATEGORY 

    BEGIN 

    OPEN CUSTOMCATEGORY 

    LOOP 
     FETCH CUSTOMCATEGORY INTO I_ITEM_NUM, I_DESCRIPTION, I_STOREHOUSE, I_PRICE; 
     EXIT WHEN CUSTOMCATEGORY%NOTFOUND; 
    EXIT LOOP; 
END; 
/
+1

カーソルの宣言とopenコマンドの最後にセミコロンが必要です。 EXIT LOOPの代わりにEND LOOPが必要です。 –

+0

ありがとうございます!しかし、今ではこのエラーが表示されています: 18行目のエラー:PLS-00103:次のいずれかが予想されるときにシンボル "FETCH"が検出されました:定数例外<識別子> table long double ref char timeタイムスタンプ間隔の日付バイナリの全角文字nchar 0.01秒 –

答えて

関連する問題