From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Suso Lopez <jlcubas(at)terra(dot)es> |
Cc: | Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: ERROR: relation "ctr_alt" does not exist en una funcion |
Date: | 2009-08-20 03:23:30 |
Message-ID: | 20090820032330.GC6781@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Suso Lopez escribió:
> CREATE OR REPLACE FUNCTION prueba(n_cli integer, existe boolean)
> RETURNS boolean AS
> $BODY$
1> DECLARE
2>
3> valores ctr_alt%ROWTYPE; me marca error el del titulo del mensaje
4> encontrado int4;
5> BEGIN
6> SELECT cod_cli,esta FROM bloq WHERE cod_cli=n_cli ;
7>
8> IF NOT FOUND THEN
9> valores.cod_cli:=n_cli: aqui tambien me da error
10>
11> RETURN FALSE;
12> END IF;
13> IF FOUND THEN
14> RETURN true;
15> END IF;
16> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE
Creé esta función y las dos tablas mencionadas en ella y me funciona
perfectamente:
create table bloq (cod_cli int, esta int);
create table ctr_alt (cod_cli int);
Hice dos pequeños cambios a la función: uno es que el : al final de la
línea 9 debe cambiarse por un ;
El otro es que el SELECT de la línea 6 debe cambiarse por un PERFORM.
Luego de eso, la función anda bien. Sospecho que tu problema puede ser
que la tabla tiene nombre con mayúsculas, o bien que está en otro
esquema, o algún otro error de piloto por el estilo.
--
Alvaro Herrera http://www.advogato.org/person/alvherre
"MySQL is a toy compared to PostgreSQL." (Randal L. Schwartz)
(http://archives.postgresql.org/pgsql-general/2005-07/msg00517.php)
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2009-08-20 03:41:22 | Re: ¿Existe una función en JavaScript para poder saber el Número de parametros recibidos en una función creada por el usuario? |
Previous Message | Alvaro Herrera | 2009-08-20 03:16:54 | Re: ¿Existe una función en JavaScript para poder saber el Número de parametros recibidos en una función creada por el usuario? |