Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/08/2009, 17:10
chimaria
 
Fecha de Ingreso: marzo-2009
Mensajes: 121
Antigüedad: 15 años, 1 mes
Puntos: 1
Problemas con un select con condicion

De nuevo por aqui tengo otro problema y es que que estoy tratando de hacer una consulta a la base de datos a traves de una funcion que recibe el parametro por el que voy a hacer la compracion.
la funcion que defini es la siguiente nose si es que estoy pasando los parametros como no son pero de lo que he investigado creo que es asi:

CREATE OR REPLACE FUNCTION inf_concepto(id_concepto int4)
RETURNS SETOF conceptos AS
$BODY$
DECLARE

fila conceptos%rowtype;
--var int4;
sql character varying;
BEGIN
sql = 'SELECT id_sede,id_concepto,concepto,clase,tipo,status_con venio,afecta_prestaciones,afecta_utilidades,afecta _vacaciones,unidad,formula,afecta_liquidacion,afec ta_sueldomensual,ingreso_mensual,vigente,asociado, descripcion FROM conceptos WHERE id_concepto like id_concepto';

FOR fila IN EXECUTE sql
LOOP
RETURN NEXT fila;
END LOOP;
RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION inf_concepto(id_concepto int4) OWNER TO postgres;


y cuando la ejecuto no me da ningun error pero tampoco hace la compracion porque yo ejecuto la funcion desde postgre y no lo hace.....


SELECT * from inf_concepto(2);
de esta forma lo ejecuto pero no hace la compracion porque en la tabla tengo un solo registro y el id de ese registro es 1 y yo le coloco 2 e igual me trae el registro cosa que no deberia pasar ......
Creo que es un problema con el paso de parametros, porque si yo le coloco como nombre al parametro de entrada entrada me dice que entrada no es una columna de conceptos , esdecir acepta como parametro si tienen los mismos nombres de aas columnas qde la tabla


Agradeceria a quien me pudiera ayudar