Como gerar o resultado da instrução SELECT que é executada usando SQL dinâmico nativo?
Se você puder alterar esse execute imediato em um cursor dbms_sql, a solução a seguir poderá ajudá-lo, pois você pode obter os nomes das colunas de um cursor dbms_sql: