2011/5/4 Jaime Rivera <[email protected]>: > > > On 05/04/2011 04:23 PM, Alvaro Herrera wrote: >> >> Excerpts from Jaime Rivera's message of mié may 04 16:43:57 -0300 2011: >> >>> 1. CREATE TEMP TABLE tt_tpr_presup_grafico; >>> 2. CREA UNA CONSULTA PARA OBTENCIÓN DE DATOS (COMO CADENA DE TEXTO) >>> 3. REALIZA UN FOR PARA CADA REGISTRO DE LA CONSULTA CREADA EN EL PUNTO 2 >>> 3.1 INSERTA 12 REGISTROS A LA TABLA TEMPORAL PARA CADA CICLO DEL >>> FOR >>> 4. CREA OTRA CONSULTA PARA OBTENCIÓN DE DATOS (COMO CADENA DE TEXTO) >>> 5. REALIZA UN FOR PARA CADA REGISTRO DE LA CONSULTA CREADA EN EL PUNTO 4 >>> 5.1 ACTUALIZA 12 REGISTROS A LA TABLA TEMPORAL PARA CADA CICLO DEL >>> FOR >>> 6. DEVUELVE LOS REGISTROS DE LA TABLA TEMPORAL CON: >> > Respecto a la respuesta de Jaime, ya cambie als consultas para que todas las > acciones sobre la tabla temporal se hagan a través de un "execute", pero el > problema persiste. >
el problema ocurre porque postgres ya genero un plan para esa funcion y en ese plan reemplazo el nombre de la tabla por el oid. al poner todo dentro de execute lo fuerzas a repensar las consultas cada vez y a identificar la tabla cada vez... si ya hiciste el cambio, creo tendras el mismo problema a menos que cierres la conexion y la vuelvas a abrir; es decir, si probaste cambiaste y volviste a probar tendras el mismo problema pero en una conexion nueva no deberias tener problemas... otra razon para que se mantenga el problema aunque cierres la conexion es si estas usando un pool de conexiones... -- Jaime Casanova www.2ndQuadrant.com Professional PostgreSQL: Soporte y capacitación de PostgreSQL - Enviado a la lista de correo pgsql-es-ayuda ([email protected]) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda
