PostgreSQL - Error en procedimiento de almacenado

 
Vista:

Error en procedimiento de almacenado

Publicado por atlasdelcarinakeel (2 intervenciones) el 02/05/2006 15:13:19
Que tal saludos, veran estoy tratando de hacer un procedimiento de almacenado llamando la funcion desde php, pero me sale el siguiente error:

Warning: pg_query() [function.pg-query]: Query failed: ERROR: function agr_est("unknown", "unknown", "unknown", integer, "unknown", "unknown", "unknown", integer, "unknown", integer, "unknown", "unknown", "unknown", "unknown", "unknown", "unknown", "unknown") does not exist HINT: No function matches the given name and argument types. You may need to add explicit type casts. in /var/www/Postgrado/muestra-planilla2.php on line 140

El script php para llamar la funcion es este:

$sel = pg_query($conecta, "SELECT agr_est('$apellido','$nombre','$nac',$cedula,'$dir_hab','$telhab','$telefcel',
$edad,'$estadocivil',$dependientes,'$correoe','$condicionactual',
'$instituciontrabaja','$direcciontrabaja','$telefofic','$cargo','$dedicacion')");

y el codigo de la funcion es este:

CREATE OR REPLACE FUNCTION agr_est("varchar", "varchar", "varchar", int4, "varchar", "varchar", "varchar", int2, "varchar", int2, "varchar", "varchar", "varchar", "varchar", "varchar", "varchar", "varchar")
RETURNS int4 AS
$BODY$declare
datosest estudiante%ROWTYPE;

BEGIN

SELECT INTO datosest * FROM estudiante
WHERE ci=$4;

IF NOT FOUND THEN

INSERT INTO estudiante(apellidos,nombres,nacionalidad,ci,direccion_habitacion,tel_hab,cel,
edad,estado_civil,num_dependientes,correoe,cond_empleado,institucion_trabaja,
direccion_trabaja,telf_trabaja,cargo,dedicacion_trabajo) VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17);
RETURN 1;
END IF;

RETURN datosest.ci;
end; $BODY$
LANGUAGE 'plpgsql' VOLATILE;

Pues en realidad no se que pueda ser ya verifique los argumento y el orden, y no veo como solucionar esto.

Si alguien a pasado por esto le agradeceria su comentario, para ver como puedo solucionarlo.

Gracias.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE: Error en procedimiento de almacenado

Publicado por Julio (4 intervenciones) el 04/05/2006 00:05:45
trata de cambiar en tu procedimiento los tipos de valores int a uno solo, osea que todos sean int4
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: Error en procedimiento de almacenado

Publicado por atlasdelcarinakeel (2 intervenciones) el 04/05/2006 03:00:39
Muchas gracias!!!!!, tenias razon cambie los valores de los tipos int y resulto.

Saludos y gracias nuevamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar