Re: Esquema temporal en uso

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Oswaldo Hernández <listas(at)soft-com(dot)es>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Esquema temporal en uso
Date: 2008-05-08 16:15:24
Message-ID: 20080508161524.GF5515@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Oswaldo Hernández escribió:
> Hola,
>
> Tengo una funcion que necesita comprobar si se han creado previamente
> unas tablas temporales para regenerarlas si es necesario.
>
> Para verificar si existe una tabla suelo hacer una lectura en pg_class
> buscando tabla y esquema, pero en el caso de las tablas temporales no se
> que esquema esta utilizando la sesion actual.
>
> ¿Como puedo averiguar cual es el esquema temporal que esta utilizando la sesion?

Es pg_temp_NNN donde el NNN corresponde a tu backend ID, el cual puedes
obtener asi:

select id
from pg_stat_get_backend_idset() as id
where pg_stat_get_backend_pid(id) = pg_backend_pid();

Tambien puedes usar simplemente "pg_temp" que se expande al esquema
temporal de tu sesion. (Claro que esto no va a funcionar si consultas
directamente el catalogo, pero funciona si usas pg_table_is_visible()
por ejemplo).

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2008-05-08 16:17:02 Re: Curso
Previous Message Julio Cesar Rodriguez Dominguez 2008-05-08 16:12:09 Re: Curso