驴C贸mo saber si existe una tabla?

yajuju
03 de Noviembre del 2005
Buenas, tengo un procedimiento en PL/SQL al que se le pasa como argumento el nombre de una tabla. 驴C贸mo saber si la tabla existe? El problema es que no puedo usar user_tab_columns, user_tables, dba_tables, etc porque es posible que la tabla se encuentre en una base de datos linkada (un dblink) que est谩 en otra instancia, por ejemplo, imaginad que el valor que se pasa al procedimiento es "nombre_tabla@dblink1"- 驴C贸mo saber si existe? 驴C贸mo puedo acceder al diccionario de datos de un dblink? Muchas gracias.

CHEMIAN
03 de Noviembre del 2005
Haz un select sencilla select * from tabla, y si te da error, es que no existe.
para consultar el diccionario de un bbdd con dblink, pon el dblin detras del nombre de la vista del diccionario, por ejemplo dba_object@dblink. por supuesto, tendras que tener permisos de consulta sobre las vistas del diccionario de esa bbdd.

chemian2
03 de Noviembre del 2005
chemian te refieres a que no existe ninguna en tu esquema no?? pero en otros puede ser

Jor-El
03 de Noviembre del 2005
Si le est谩s pasando el nombre de tabla por parametro, no puedes utilizar sql estatico, tienes que usar sql dinamico.