Problem with function

Started by Nonameover 24 years ago2 messagesgeneral
Jump to latest
#1Noname
qradius@qnet.com.pe

Hi!
Please ; i have a function denfined as:

create function nr_renewLease(varchar(15),interval)
returns integer as '
DECLARE
local_address ALIAS FOR $1;
lease_duration ALIAS FOR $2;
BEGIN
update nr_lease set expires=now()+lease_duration where
address=local_address;
END;
return 1;
'
language 'plpgsql';

when I calle the functions as:

select nr_renewLease('192.168.100.1','20 seconds');

I get the follow error:

ERROR: Function 'nr_renewlease()' does not exist
Unable to identify a function that satisfies the given
argument types
You may need to add explicit typecasts

But I don't know why, since I can see sintaxis of my function
is fine, and the passed arguments are fine, Can you help me,
if exists some detail I am not seeing?

I can see that this error message also appears when a function
that doesn't exists is called, but my function exists!

Thank you.

Regards.

Ernesto Freyre

---------------------------------------------
Este mensaje fue enviado a trav�s de Qnet
http://www.qnet.com.pe

#2Stephan Szabo
sszabo@megazone23.bigpanda.com
In reply to: Noname (#1)
Re: Problem with function

On Thu, 8 Nov 2001 qradius@qnet.com.pe wrote:

Hi!
Please ; i have a function denfined as:

create function nr_renewLease(varchar(15),interval)
returns integer as '
DECLARE
local_address ALIAS FOR $1;
lease_duration ALIAS FOR $2;
BEGIN
update nr_lease set expires=now()+lease_duration where
address=local_address;
END;
return 1;
'
language 'plpgsql';

when I calle the functions as:

select nr_renewLease('192.168.100.1','20 seconds');

I get the follow error:

ERROR: Function 'nr_renewlease()' does not exist
Unable to identify a function that satisfies the given
argument types
You may need to add explicit typecasts

Is it possible that you created it as "nr_renewLease" or used
an interface that did so? If so, you need to double quote
the name on uses as well. Also, when I tried it, the end and
return 1 needed to be swapped.