Re: como pasar parametros cuando quiero ejecutar una funcion Es sencillo solo coloca algo como lo siguiente:
CREATE OR REPLACE FUNCTION abmusuarios(tipo1 smallint,codigo1 character,paterno1 "character varying",materno1 "character varying",nombre1 "character varying",usuario1 "character varying",clave1 "character varying",categoria1 smallint,estado1 character,clave2 "character varying")
RETURNS void AS
$BODY$declare
BEGIN
IF tipo1 = 1 THEN BEGIN
clave2 := md5(clave1);
INSERT INTO empleado (codigo,paterno,materno,nombre,usuario,clave,categ oria,estado) VALUES (codigo1,paterno1,materno1,nombre1,usuario1,clave2 ,categoria1,estado1);
ELSE
clave2:=md5(clave1);
UPDATE empleado SET codigo=codigo1,paterno=paterno1,materno=materno1,n ombre=nombre1,usuario=usuario1,clave=clave2,catego ria=categoria1,estado=estado1 WHERE usuario=usuario1;
END IF;
RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION abmusuarios(tipo1 smallint,codigo1 character,paterno1 "character varying",materno1 "character varying",nombre1 "character varying",usuario1 "character varying",clave1 "character varying",categoria1 smallint,estado1 character,clave2 "character varying") OWNER TO postgres;
y para ejecutar la funcion:
select abmusuarios(1,'cod1','pat1','mat1','nom1','user1', 'cla1',1,'est1','cla2');
Y listo asi te debe funcionar.
Espero te funcione. |