Error 42601 al crear una funcion

From: Jairo Sánchez <jairosll(at)gmail(dot)com>
To: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Error 42601 al crear una funcion
Date: 2007-03-12 15:20:06
Message-ID: 59f843f50703120820i3ffe36can8beaa48b8375a135@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola todos,

necesito una ayuda para vislumbrar un error de sintaxis el cual no logro ver.

Esta es la funcion que estoy creando:
CREATE FUNCTION cargausu(
tb text,
c1 text,
c2 text,
c3 text,
c4 text,
c5 text,
c6 text,
c7 text,
c8 text,
c9 text,
c10 text,
c11 text,
c12 text,
c13 text,
c14 text,
c16 text,
c17 text,
c18 text,
c19 text,
c20 text
) RETURNS text AS
$$
DECLARE
tabla ALIAS FOR $1;
edad ALIAS FOR $8;
duplicado RECORD;

BEGIN

IF tabla == 'US' THEN
SELECT consecutivo,edad INTO duplicado FROM usuarios where
( codentadm = $2 AND
tipid = $3 AND
numid = $4 AND
tipusu = $5 AND
tipafi = $6 AND
codocu = $7 AND
uniedad = $9 AND
sexo = $10 AND
coddep = $11 AND
codmun = $12 AND
zona = $13
);
IF found THEN
IF (edad-duplicado.edad =< 1 AND edad-duplicado.edad => 1) THEN
INSERT INTO errores(codentadm,coddep,codmun,tiperr,criterio,fechaval,regnum,trimanio)
VALUES('$2','$11','$12','El Registro presenta
Duplicidad','D01',date(now()),duplicado.consecutivo,'$13');

RETURN "Error";
END IF;
END IF;
END IF;
BEGIN
INSERT INTO usuarios
(codentadm,tipid,numid,tipusu,tipafi,codocu,edad,uniedad,sexo,coddep,codmun,zona,trimanio)
VALUES ('$2','$3','$4','$5','$6','$7','$8','$9','$10','$11','$12','$13','$14');
RETURN "OK";
EXCEPTION WHEN unique_violation THEN
RETURN "Se totio";
-- do nothing
END;

END;
$$
LANGUAGE plpgsql;

y el error que me entrega es:
ERROR: error de sintaxis en o cerca de «$1»
Estado SQL:42601
Contexto:SQL statement in PL/PgSQL function "cargausu" near line 34

he remplazado, quitado, cambiado de todo y en todos lados pero no
logro encontrarlo.

Agradezco su ayuda.

JSLL

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Edwin Quijada 2007-03-12 15:22:21 Re: Version de postgres?
Previous Message Edwin Quijada 2007-03-12 15:13:26 RE: Mono. Postgresql y VB