db (실제로는 전혀 사용하지 않음)에 익숙하지 않아 문제가 발생합니다.
Oracle 11g이 있고 PL/SQL 개발자를 사용하고 있습니다.
나는 간단한 절차가 있습니다커서가있는 Oracle 프로 시저 실행
type t_ref_cursor is ref cursor;
procedure fakeProc (
io_cursor in out t_ref_cursor
)
is
begin
open io_cursor for
SELECT * from myTable;
end fakeProc;
지금 내가 (안 테스트 창)는 SQL 창으로 실행할을 나는 실행하려고하고 무엇 :
v_cur cursor;
begin
fakeProc(:v_cur);
end;
내가 오류를 얻을 : ORA-00900 : 유효하지 않은 SQL 문 ORA-01008 : 모든 변수가 바인딩되지 않았습니다.
이렇게 (begin-end 포함) 프로 시저를 실행하는 올바른 방법을 가르쳐 줄 수 있습니까?
SQL> VARIABLE p_cur REFCURSOR;
REFCURSOR not supported
이후 버전 (명령 창)을 지원할 수있다, 또는 당신은 SQL * Plus를 사용할 수 있습니다 : PL/SQL 개발자의
이 예외 블록은 발생할 수있는 오류를 숨기는 것을 제외하고는 아무런 목적이 없습니다. 그것을 제거하십시오! –
t_ref_cursor 란 무엇입니까? – Teshte
@VincentMalgrat : 그것은 무의미합니다 ... – Nianios