Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

Problema con sentencias sql

Estas en el tema de Problema con sentencias sql en el foro de PostgreSQL en Foros del Web. Hola señores. Quisiera saber como establecer parámetros en una consulta sql, yo normalmente uso la siguiente sintaxis: Código HTML: -- Function: pr_r_report(codigo text, tabla text) ...
  #1 (permalink)  
Antiguo 26/07/2010, 14:22
 
Fecha de Ingreso: abril-2010
Mensajes: 49
Antigüedad: 14 años, 7 meses
Puntos: 0
Pregunta Problema con sentencias sql

Hola señores.
Quisiera saber como establecer parámetros en una consulta sql, yo normalmente uso la siguiente sintaxis:

Código HTML:
-- Function: pr_r_report(codigo text, tabla text)

-- DROP FUNCTION pr_r_report(text, text);

CREATE OR REPLACE FUNCTION pr_r_report(text, text)
  RETURNS SETOF count AS
$BODY$DECLARE
	registros count;
BEGIN
	--execute 'delete from rep_alta';
	FOR registros IN EXECUTE 'select count(*) from ' || quote_literal(tabla) || ' where idalta=' ||  quote_literal(codigo) loop
	return next registros;
end loop;
return;
END;
$BODY$
  LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION pr_r_report(text, text) OWNER TO postgres;
Pero al ejecutarse esta función por ejemplo con estos valores

Código HTML:
select * from  pr_r_report1('4','altadetalle')
La consulta se ejecuta de la siguiente manera

Código HTML:
select count(*) from 'altadetalle' where altadetalle='4'
Emitiéndose un error. ¿Hay alguna otra manera de establecer los parámetros sin necesidad de utilizar quote_literal? Me sería muy satisfactoria su ayuda, gracias.
  #2 (permalink)  
Antiguo 26/07/2010, 14:39
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Problema con sentencias sql

Para que haces el quote_literal en el nombre de la tabla?

Quitale únicamente ese y prueba.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 27/07/2010, 07:22
 
Fecha de Ingreso: abril-2010
Mensajes: 49
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Problema con sentencias sql

Si, acabo de hacerlo y funcionó. Gracias huesos52.

Etiquetas: sentencias, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:20.