sql >> Base de Datos >  >> RDS >> PostgreSQL

Proceso de ejecución de funciones Postgresql

Por razones de seguridad, pg_dump (o pg_restore) emite un comando que vacía la ruta de búsqueda, por lo que cuando restaura, el proceso se ejecuta con una ruta de búsqueda vacía. Pero no edita el cuerpo del texto de su función en absoluto, sino que lo emite tal cual, por lo que no puede modificarlo para especificar el nombre completo de la tabla. Entonces, la función no puede encontrar la tabla cuando se ejecuta dentro del proceso que realiza la restauración.

Puede calificar completamente el nombre de la tabla en la función, o puede definir la función con SET search_path = public . O puede editar el archivo de volcado para eliminar la parte que borra la ruta de búsqueda, si no le preocupan las implicaciones de seguridad.