2016-07-30 4 views
0

이 스크립트가 작동하지 않습니다. I_CATEGORY에 저장된 모든 항목의 항목 번호, 설명, 창고 번호 및 단가를 검색하여 출력하려고합니다. 루프, 커서를 닫고 절차를 종료해야합니다. 나는이 세 가지 모두에서 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 초 –

답변

관련 문제