Ir para conteúdo

Arquivado

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

Nerd Louco

Erro na funcao

Recommended Posts

o que esta errado funcao, pois no meu banco local esta funcionando normal, mais no servidor remoto nao consigo criar esta funcao.

 

Versao Postgresql 8.1.23

 

 

CREATE FUNCTION public.fc_mesextenso(integer, character varying) RETURNS text
LANGUAGE plpgsql
AS $_$
declare
iMes alias for $1;
sTipoRetorno alias for $2;
sNomeMes text;
sSiglaMes text;

begin
select nome, sigla
into sNomeMes,
sSiglaMes
from (values (1::integer, 'Janeiro'::text, 'Jan'::text),
(2::integer, 'Fevereiro'::text, 'Fev'::text),
(3::integer, 'Março'::text, 'Mar'::text),
(4::integer, 'Abril'::text, 'Abr'::text),
(5::integer, 'Maio'::text, 'Mai'::text),
(6::integer, 'Junho'::text, 'Jun'::text),
(7::integer, 'Julho'::text, 'Jul'::text),
(8::integer, 'Agosto'::text, 'Ago'::text),
(9::integer, 'Setembro'::text, 'Set'::text),
(10::integer, 'Outubro'::text, 'Out'::text),
(11::integer, 'Novembro'::text, 'Nov'::text),
(12::integer, 'Dezembro'::text, 'Dez'::text)) as meses(mes, nome, sigla)
where mes = iMes;

if sTipoRetorno = 'nome' then
return sNomeMes;
else
return sSiglaMes;
end if;
end;
$_$;


ALTER FUNCTION public.fc_mesextenso(integer, character varying) OWNER TO sigmasol;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo.

 

Uma dúvida. No PostgreSQL, quando você passar um parâmetro para uma consulta, você não teria que passar algo semelhante a isso:

 

where coluna = :parametro

 

Se tiver, então observe que na sua condição, não está sendo feito dessa maneira. Não tenho o PostgreSQL instalado para testar, é a única observação a olho nu que pude perceber.

 

Até a próxima. :thumbsup:

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.