dbandre29 0 Denunciar post Postado Janeiro 3, 2006 Tenho o seguinte problema , tenho uma variável que recebe um select e preciso de um cursor que faz umas concatenações, funciona legal, mas eu preciso pegar o resultado de cada campo dessa query dentro do cursor para jogar dentro de variáveis para jogar num Insert: for rPega in cPega loop V_SQL := 'SELECT CLIE.CLIE_CODIGO ' || ' , CLIE.CLIE_MATR_GC' || ' , CLIE.CLIE_MATR_CT' || ' , CLIE.CLIE_MATR_CS' || ' , CLIE.CLIE_MATR_GEV' || ' , CLIE.CLIE_NM_DIRETORIA_PARCEIRA ' || ' FROM CLIENTE_PORTAL CLIE' || ' , DIRETORIA DIR' || ' , ENDERECO ENDE' || ' , PROFILE_EBT PREB' || ' , RANKING_PORTAL RAPO' || ' , VISAO_CLIENTE VICL' || ' WHERE CLIE.CLIE_NM_DIRETORIA_PARCEIRA = DIR.DS_DIRET_REGIO'|| ' AND CLIE.CLIE_CODIGO = ENDE.CLIE_CODIGO' || ' AND CLIE.CLIE_CODIGO = PREB.CLIE_CODIGO' || ' AND CLIE.CLIE_CODIGO = RAPO.CLIE_CODIGO' || ' AND CLIE.CLIE_CODIGO = VICL.CLIE_CODIGO '; for rPegaFiltro in cPegaFiltro (rPega.REDI_ID) loop if INSTR(V_CONDICOES,rPegaFiltro.CLIE_CODIGO)> 0 THEN V_CONDICOES := ' OR '|| rPegaFiltro.CLIE_CODIGO ||rPegaFiltro.VALOR_OPERADOR|| ''''||rPegaFiltro.CAMPO|| ''''; else V_CONDICOES := ' AND '|| rPegaFiltro.CLIE_CODIGO ||rPegaFiltro.VALOR_OPERADOR || '''' ||rPegaFiltro.CAMPO|| ''''; end if; End loop; V_SQL :=V_SQL || V_CONDICOES; EXECUTE IMMEDIATE(V_SQL); Alguém pode me dar uma ajuda Compartilhar este post Link para o post Compartilhar em outros sites
alphamek 2 Denunciar post Postado Janeiro 16, 2006 Você já utilizou o INTO no loop... Exemplo: Loop NOME_CURSOS INTO variavel1, variavel2 ... variavelN; Lembrete: O toal de colunas do SELECT do cursos deverá ser o mesmo número de variaveis. Abraços, http://forum.imasters.com.br/public/style_emoticons/default/shifty.gif Compartilhar este post Link para o post Compartilhar em outros sites