Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tassiana

FUnction para consulta

Recommended Posts

Criei uma função que consulta dados de acordo com os parâmetros que eu tenho, mas quando execute aparece o seguinte erro:ERROR: query has no destination for result dataSQL state: 42601Hint: If you want to discard the results of a SELECT, use PERFORM instead.Context: PL/pgSQL function "teste_now" line 8 at SQL statementCREATE FUNCTION teste_now(vtipo integer, vstatus integer) RETURNSinteger AS $$DECLAREv_tipo ALIAS FOR $1;v_status ALIAS FOR $2; registro record;retorno char(10);BEGINIF v_tipo <> 0 AND v_status <> 0 THENselect nome from empreendimento where idtipoempreendimento = v_tipo and statusempreendimento = v_status;retorno := "SELECT 1"; END IF;IF v_tipo <> 0 AND v_status = 0 THENselect * from empreendimento where idtipoempreendimento = v_tipo;retorno := "SELECT 2";END IF;IF v_tipo = 0 AND v_status <> 0 THENselect * from empreendimento where idtipoempreendimento = v_status;retorno := "SELECT 3";END IF;RETURN retorno;END;$$LANGUAGE plpgsql; select teste_now (1,2)Alguém pode me ajudar???? Não consigo exibir dados da tabela fazendo a consulta dentro da function.Obrigada!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Criei uma função que consulta dados de acordo com os parâmetros que eu tenho, mas quando execute aparece o seguinte erro:ERROR: query has no destination for result dataSQL state: 42601Hint: If you want to discard the results of a SELECT, use PERFORM instead.Context: PL/pgSQL function "teste_now" line 8 at SQL statementCREATE FUNCTION teste_now(vtipo integer, vstatus integer) RETURNSinteger AS $$DECLAREv_tipo ALIAS FOR $1;v_status ALIAS FOR $2; registro record;retorno char(10);BEGINIF v_tipo <> 0 AND v_status <> 0 THENselect nome from empreendimento where idtipoempreendimento = v_tipo and statusempreendimento = v_status;retorno := "SELECT 1"; END IF;IF v_tipo <> 0 AND v_status = 0 THENselect * from empreendimento where idtipoempreendimento = v_tipo;retorno := "SELECT 2";END IF;IF v_tipo = 0 AND v_status <> 0 THENselect * from empreendimento where idtipoempreendimento = v_status;retorno := "SELECT 3";END IF;RETURN retorno;END;$$LANGUAGE plpgsql; select teste_now (1,2)Alguém pode me ajudar???? Não consigo exibir dados da tabela fazendo a consulta dentro da function.Obrigada!!!!

Tem outro post http://forum.imasters.com.br/index.php?showtopic=218933 com o msm probelma q o seu.Não saco mto de postgree mas vou pesquisar como pessoal q trabalha comigo.Pelo erro: If you want to discard the results of a SELECT, use PERFORM insteadentendi o postgree esta reclamando de como porque não esta sendo usado o PERFORM na sua função.Vou dar uma pesquisada e post o q encontra aqui.t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Criei uma função que consulta dados de acordo com os parâmetros que eu tenho, mas quando execute aparece o seguinte erro:ERROR: query has no destination for result dataSQL state: 42601Hint: If you want to discard the results of a SELECT, use PERFORM instead.Context: PL/pgSQL function "teste_now" line 8 at SQL statementCREATE FUNCTION teste_now(vtipo integer, vstatus integer) RETURNSinteger AS $$DECLAREv_tipo ALIAS FOR $1;v_status ALIAS FOR $2; registro record;retorno char(10);BEGINIF v_tipo <> 0 AND v_status <> 0 THENselect nome from empreendimento where idtipoempreendimento = v_tipo and statusempreendimento = v_status;retorno := "SELECT 1"; END IF;IF v_tipo <> 0 AND v_status = 0 THENselect * from empreendimento where idtipoempreendimento = v_tipo;retorno := "SELECT 2";END IF;IF v_tipo = 0 AND v_status <> 0 THENselect * from empreendimento where idtipoempreendimento = v_status;retorno := "SELECT 3";END IF;RETURN retorno;END;$$LANGUAGE plpgsql; select teste_now (1,2)Alguém pode me ajudar???? Não consigo exibir dados da tabela fazendo a consulta dentro da function.Obrigada!!!!

Tem outro post http://forum.imasters.com.br/index.php?showtopic=218933 com o msm probelma q o seu.Não saco mto de postgree mas vou pesquisar como pessoal q trabalha comigo.Pelo erro: If you want to discard the results of a SELECT, use PERFORM insteadentendi o postgree esta reclamando de como porque não esta sendo usado o PERFORM na sua função.Vou dar uma pesquisada e post o q encontra aqui.t+
MUITO OBRIGADA POR ENQUANTO!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.