Oracle에서 저장 프로 시저를 실행하는 동안 문제가 발생합니다. 다음은 Oracle 저장 프로 시저의 오류
는 저장 프로 시저입니다 :CREATE OR REPLACE Procedure xxxlist
(yyyid in NUMBER)
IS
xid number(6);
cursor c1 is select distinct xxxID from MXS.Y where YID=yyyid;
BEGIN
IF NOT c1%ISOPEN THEN
OPEN c1;
END IF;
LOOP
FETCH c1 into xid;
dbms_output.put_line(TO_CHAR(xid));
EXIT WHEN c1%NOTFOUND;
END LOOP;
CLOSE c1;
END;
내가 저장 프로 시저를 만들 때, 나는 다음과 같은 오류 얻을 :
Warning: Procedure created with compilation errors.
내가 위에 나에게 자세한 정보를 제공하기 위해 아래의 명령을 실행을 추상 오류 메시지.
SHO ERR;
나는 위의 명령에 대한 응답으로 자세한 내용은 아래를 얻을 :
Errors for PROCEDURE XXXLIST:
LINE/COL ERROR
-------- -----------------------------------------------------------------
5/18 PL/SQL: SQL Statement ignored
5/52 PL/SQL: ORA-00942: table or view does not exist
지금, 나는 테이블 이름 또는 SQL 쿼리 자체에 문제가 있음을 이해합니다. 그래서 PRODECURE 외부에서 별도로 SQL 쿼리를 실행하여 테이블이나 쿼리가 무엇인지 확인합니다.
select distinct xxxID from MXS.Y where YID=yyyid;
그러나 위의 쿼리에는 문제가 없습니다. 쿼리가 제대로 실행되고 적절한 결과가납니다.
따라서 실행하는 동안 프로 시저에 문제가있는 이유를 알 수 없습니다. 누구든지 도와 줄 수 있습니까?