Cómo saber en que tabla se encuentra una columna determinada en Oracle

Esta semana se me ha planteado el problema de tener que localizar en que tabla se encontraba una columna determinada dentro de una gran base de datos Oracle.

No sabía si iba a ser posible realizar eso, ya que hasta ahora me había limitado a hacer consultas SQL sobre el contenido de las base de datos, pero nunca había realizado consultas SQL sobre la estructura de una base de datos.

Con una sencilla búsqueda por Internet he encontrado la instrucción SQL que te permite realizar eso:

01 Abre el cliente de bases de datos Oracle o el gestor de bases de datos que estés utilizando y busca la zona donde ejecutar consultas SQL.

02 Ejecuta la siguiente consulta SQL:

select table_name from all_tab_columns where column_name='nombre_columna_buscada';

03 Personaliza la consulta SQL. Puedes concretar más tu consulta SQL si también filtras por el tipo de dato que contiene la columna que estás buscando o por el nombre del propietario de la base de datos.  Ejecuta la siguiente consulta SQL para filtrar por ambos campos:

select table_name from all_tab_columns where column_name='nombre_columna_buscada' and data_type='NVARCHAR2' and owner='propietario_buscado' order by table_name;

Espero que te sea de utilidad en tus proyectos!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *