PostgreSQL - Como Saber si ya existe una tabla

 
Vista:

Como Saber si ya existe una tabla

Publicado por Ed (3 intervenciones) el 07/02/2007 15:45:39
mi duda es la siguiente, necesito crear tablas temporales, pero necesito saber si debido a otro proceso ya ha sido creada.Espero alguien me de una idea.
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Como Saber si ya existe una tabla

Publicado por Roberto (22 intervenciones) el 09/02/2007 10:22:42
Una solución sencilla es intenter crear la tabla. Si el sistema te devuelve error el cual capturaras por programación... tate... ya existe...

La idea en v.b 6.0 seria:

sql = "Creata Table Tabla(Campo int)"

on error resume next
cn.execute sql
if err.number <> 0 then
'error al crear la tabla.. eso es que existe
else
Cn.Execute "Drop Table Tabla" ' me cargo la tabla
CrearLaTablaCorrectamente
end if
on error goto 0

Otra manera mas curiosa en mirando en el sistema si existe la tabla:
Mira a ver si este código te puede ayudar... pues no tengo exactemente el código ahora:

string sg;/* = "SELECT relname,reltuples,attname,attnum ";
sg += "FROM pg_class,pg_attribute ";
//sg += "WHERE pg_class.relname='mitabla' AND ";
sg += "WHERE ";
sg += "pg_attribute.attrelid=pg_class.oid ";
sg += "AND attnum > 0 ";
sg += "ORDER BY attnum; ";*/
ó

sg = "Select datname, datdba,encoding,datistemplate,datallowconn,datconnlimit,datlastsysoid,datfrozenxid,dattablespace From pg_database";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como Saber si ya existe una tabla

Publicado por Ed (3 intervenciones) el 14/02/2007 16:58:44
Gracias pero encontre la siguiente solucion y me funciono muy bien
select * from pg_tables where tablename='nombre_tabla';

si es necesario se le puede agregar

'and schemaname='nombre_de_esquema''
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como Saber si ya existe una tabla

Publicado por angelhlg (1 intervención) el 14/12/2008 16:26:02
una forma sencilla de obtener la lista de tablas de una forma muy sencilla:

SELECT t.table_name FROM information_schema.tables t WHERE t.table_schema = 'public' ORDER BY t.table_name
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar