From: | Richard Huxton <dev(at)archonet(dot)com> |
---|---|
To: | "Alejandro Michelin Salomon ( Adinet )" <alejmsg(at)adinet(dot)com(dot)uy> |
Cc: | Pgsql-General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Problem with function parameters |
Date: | 2006-12-01 15:24:26 |
Message-ID: | 4570492A.4010700@archonet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Alejandro Michelin Salomon ( Adinet ) wrote:
> Hi :
>
> I have installed Pg 8.08
>
> I create this function :
> CREATE OR REPLACE FUNCTION CALCULO_VALOR_LIQUIDO_HELPDESK( nTipoDesconto
> SMALLINT,
> nTipoComissao
> SMALLINT,
> When i test this function, i call the function with this parameters :
>
> SELECT CALCULO_VALOR_LIQUIDO_HELPDESK( 0, 1, 10, 10, 1000 );
>
> This is the error that happens:
>
> ERROR: function calculo_valor_liquido_helpdesk(integer, integer, integer,
> integer, integer) does not exist
> SQL state: 42883
> Hint: No function matches the given name and argument types. You may need to
> add explicit type casts.
>
> I dont now what the two first parameters are see as integer. When 0 and 1
> are true smallint values.
"0" and "1" end up as literal integers, since you've not told it
otherwise. You have two options:
1. Cast your parameters when you call the function
select calculo_valor_...(0::smallint, 1::smallint, ...)
2. Define your function to take integers
I'd choose #2, you're not gaining anything by having smallint parameters.
--
Richard Huxton
Archonet Ltd
From | Date | Subject | |
---|---|---|---|
Next Message | Alejandro Michelin Salomon ( Adinet ) | 2006-12-01 16:05:49 | Problem with function parameters |
Previous Message | Thomas H. | 2006-12-01 15:10:39 | Re: PostgreSQL doesn't accept connections when Windows |