Excerpts from Alfonso Lopez Gemar's message of lun feb 14 07:44:40 -0300 2011:
> 
> Hola a todos;
> Tengo un problema, quiero hacer una función recursiva en porsgreSQL 
> utilizando el lenguaje plpythonu
> El tema en cuestión es que no se como hacer para uqe las funciones que tengo 
> declaradas en mi esquema public sean accesibles/existan para la función
> Esta es mi función:
> CREATE OR REPLACE FUNCTION recursiva(numero integer DEFAULT 0)  RETURNS 
> integer AS$BODY$if numero>0:    aux = numero -1     plan_id = 
> plpy.prepare("SELECT recursiva( $1 )", [ "integer"])    rv2 = 
> plpy.execute(plan_id, [aux])
>     return rv2[0][0]+numeroelse:    return numero$BODY$  LANGUAGE plpythonu 
> VOLATILE  COST 100;ALTER FUNCTION recursiva(integer) OWNER TO pg_user;
> 
> Al intentar hacer el "SELECT recursiva..." no va y tampoco funciona si la 
> fincion es así:
> CREATE OR REPLACE FUNCTION recursiva(numero integer DEFAULT 0)  RETURNS 
> integer AS$BODY$if numero>0:    return numero + recursiva(numero-1)else:    
> return numero$BODY$  LANGUAGE plpythonu VOLATILE  COST 100;ALTER FUNCTION 
> recursiva(integer) OWNER TO pg_user;
> 
> Esta ultima forma es primera que se me ocurrio.

La primera forma "debería" funcionar.  ¿Qué error te dio?

La segunda forma no funciona, no te gastes intentándolo.

-- 
Álvaro Herrera <[email protected]>
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a