I am new to Postgresql and am having problems getting functions working. I have been following an example in the book "PostgreSQL" by Douglas & Douglas Published by Developers Library. I put the code in as a function (see end of email)
When I execute it from psql I get the following: dev=# select my_factorial(1); server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. The connection to the server was lost. Attempting reset: Failed. Can any one help me find the problem. point me in the right direction? Thanks Gene Tuttle -- Function: public.my_factorial(int4) -- DROP FUNCTION public.my_factorial(int4); CREATE OR REPLACE FUNCTION public.my_factorial(int4) RETURNS int4 AS ' DECLARE arg INTEGER; BEGIN arg := $1; IF arg IS NULL or arg < 0 THEN RAISE NOTICE \'Invalid Number\'; RETURN NULL; ELSE IF arg = 1 THEN RETURN 1; ELSE DECLARE next_value INTEGER; BEGIN next_value := my_factorial(arg - 1) * arg; RETURN next_value; END; END IF; END IF; END; ' LANGUAGE 'plpgsql' VOLATILE; ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend