¿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 "[email protected]"- ¿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_obj[email protected] 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.