2011-02-23 4 views
0

프로 시저를 저장했습니다. 프로 시저에는 세 개의 커서가 있습니다. 프로 시저에서 프로 시저를 매일 실행해야합니다. 두 개의 커서 만 매일 실행해야하고 나머지 커서는 모든 첫 번째에서만 실행되어야합니다. 3 번째 커서로 변경해야 할 사항은 무엇입니까? 솔루션을 제공하십시오.프로 시저의 PL/SQL 커서 문제

답변

3

커서 자체가 실제로 실행되지 않습니다. 커서를 사용하는 코드입니다.

-- Check if today is first day of the month 
if trunc(sysdate, 'MM') = trunc(sysdate) then 
    -- Use cursor here 
end if; 

은 아마도 더 나은 솔루션은 두 개의 별도의 절차를 생성하고 각각에 대해 일자리를 창출하는 것입니다 :이 달의 첫날 인 경우 그래서 당신은 코드에서 확인할 수 있습니다. 작업의 간격을 지정하여 매일 하나씩 실행하고 다른 작업은 매월 실행하도록 할 수 있습니다.

1

찾아보기 dbms_scheduler

+0

이 답변은 도움이 되기에는 너무 성급한 것입니다. – APC

+0

이것은 오라클 문서를 직접 가리키며 dbms_scheduler (또는 일부 일정 잡기 소프트웨어)는 여기에서 필요한 것입니다. 간단하고 요점. – tbone

+0

그는 프로 시저를 계획하지 않으므로 커서가 실행되는 날짜에 따라 조건부로 커서 중 하나를 사용하려고합니다. –