카테고리 없음
[신탁] 커서 루프의 오라클 호출 절차
필살기쓰세요
2021. 1. 22. 00:34
루프를 원하는 경우 다음을 사용할 수 있습니다.
begin
for x in (SELECT AUDITORID FROM SOL.GROUPS WHERE STATUS = 1) loop
INSERT_LD_PER_AUDITOR(x.AUDITORID);
end loop;
end;
그러나 sstan이 작성한 것처럼 모든 데이터를 처리하는 절차를 리팩터링하는 것이 더 낫습니다.
-------------------SQL 문을 통해 프로 시저를 호출 할 수 없습니다. 그리고이를 해결하는 방법은 적어도 두 가지가 있습니다. 1) pl_sql 함수 생성 및 호출 절차를 함수로 설정
create or replace function F_INSERT_LD_PER_AUDITOR (VAUDITORID NUMBER)
return NUMBER
is
begin
NSERT_LD_PER_AUDITOR (VAUDITORID);
return 0;
end;
/
그것을 함수라고 부릅니다.
SELECT F_INSERT_LD_PER_AUDITOR(AUDITORID)
FROM SOL.GROUPS WHERE STATUS = 1;
2) wirte pl / sql 및 이전 주석에서와 같이 LOOP 사용
출처
https://stackoverflow.com/questions/39917038