0
For 루프 내에 변수를 표시하는 방법은 무엇입니까? 전PL/SQL SQL 개발자에서 for 루프의 변수를 표시하는 방법
set serveroutput on;
BEGIN
DBMS_OUTPUT.put_line('Starting');
FOR r IN (SELECT owner, table_name FROM all_tables WHERE owner in ('ABC','CDE'))
loop
DBMS_OUTPUT.put_line('owner');
EXECUTE IMMEDIATE 'grant select on '||r.owner||'.'||r.table_name||' to XXXX';
end loop;
DBMS_OUTPUT.put_line('Ending');
END;
를 들어
내가 출력 아래 얻고는
여기에 수행되는 모든 변경 사항을 인쇄되지 않습니다 루프 내의 하나
PL/SQL procedure successfully completed.
Starting
Ending
인쇄?
그것은 선택 사항이 어떤 값을 반환하지 않는 것을 할 수 이유가 무엇 인 쿼리 결과? – TheName
#CuriousProgrammer 따옴표를 제거하여 답변을 수정하십시오. DBMS_OUTPUT.put_line (R.owner); 하지만 아무것도 인쇄하지 않는다면 select 문이 어떤 행도 반환하지 않는다는 것을 의미합니다. 쿼리의 결과는 무엇입니까? – TheName
DBMS_OUTPUT.put_line ('R.owner'); DBMS_OUTPUT.put_line (R.owner); 둘 다 작동하지 않습니다 두 소유자를 반복하는 경우 참조해야합니다 – CuriousProgrammer