programing

Oracle: PL/SQL 함수에서 아무것도 반환하지 않을 수 있습니까?

megabox 2023. 9. 21. 20:12
반응형

Oracle: PL/SQL 함수에서 아무것도 반환하지 않을 수 있습니까?

제목에서 알 수 있듯이 PL/SQL 함수에서 아무것도 반환하지 않는 것이 가능합니까?

제 기능은 다음과 같으며, 반품을 생략할 때 오류가 발생합니다.

create or replace
FUNCTION DeleteAttributes
(code IN varchar2)
CURSOR c_attributes = SELECT ...

BEGIN
    FOR attribute_record IN c_attributes
    LOOP
        ...
    END LOOP;
END;

Oracle PL/SQL 함수에는 반환이 있어야 합니다.하위 프로그램을 프로시저로 선언하면 반환이 부족할 때 오류가 발생하지 않습니다(프로시저에는 반환이 있을 없음).

create or replace
PROCEDURE DeleteAttributes
(code IN varchar2)
CURSOR c_attributes = SELECT ...

BEGIN
    FOR attribute_record IN c_attributes
    LOOP
        ...
    END LOOP;
END;

정의에 따라 함수는 값을 반환하므로 RETURN 문이 있어야 합니다.Oracle 설명서의 함수에 대한 구문 정의를 살펴봅니다.RETURN은 옵션이 아닙니다.

당신이 왜 이런 짓을 하려고 하는지도 모르겠어요.

언급URL : https://stackoverflow.com/questions/10252619/oracle-possible-to-return-nothing-from-pl-sql-function

반응형