Problema na passagem de parâmetros

#107098
Avatar de Joel SchecheleskiJoel Schecheleski
Participante

Resolvi meu problema usando o seguinte bloco:

BEGIN
EXECUTE IMMEDIATE
'DECLARE
CURSOR C_'||P_NOMTABELA||' IS
SELECT * FROM '||P_NOMTABELA||'@DBL_BANCO;

  TYPE FETCH_ARRAY IS TABLE OF C_'||P_NOMTABELA||'%ROWTYPE;
  S_ARRAY FETCH_ARRAY;
  BEGIN
    OPEN C_'||P_NOMTABELA||';
    LOOP
      FETCH C_'||P_NOMTABELA||' BULK COLLECT INTO S_ARRAY LIMIT 10000;

      FORALL I IN 1..S_ARRAY.COUNT
        INSERT INTO '||P_NOMTABELA||' VALUES S_ARRAY(I);

      EXIT WHEN C_'||P_NOMTABELA||'%NOTFOUND;
    END LOOP;
    CLOSE C_'||P_NOMTABELA||';
  END; ';
COMMIT WORK;  

RETURN TRUE;
END;

Não era exatamente o que pretendia usar.
Fico muito feliz pela dica em relação ao uso do pacote DBMS_SQL, acabei pegando um novo conceito de uso desse pacote por intermédio da sua dica.

Grato pela atenção @RMAN 🙂

plugins premium WordPress