Tablas de show de Oracle

Tablas de show de Oracle
Las bases de datos relacionales comprenden varios objetos, cada una de las cuales contiene información y realiza múltiples tareas. Por ejemplo, uno de los objetos de base de datos más comunes es una tabla o objetos similares a la tabla, como las vistas.

Estos tipos de objetos se utilizan para almacenar datos relacionados en un punto de entrada específico para su uso posterior. De forma predeterminada, las tablas almacenan información básica que las aplicaciones de destino y los usuarios administran. Por otro lado, las vistas mantienen una instantánea particular de una consulta de tabla, etc.

Cuando trabaje con bases de datos relacionales, encontrará instancias en las que debe obtener los metadatos subyacentes almacenados en una base de datos. En este tutorial, cubriremos métodos básicos para determinar las tablas de una base de datos Oracle dada.

Diccionarios de datos de Oracle

A diferencia de otras bases de datos SQL como MySQL o PostgreSQL, Oracle no tiene un comando independiente que le permita recuperar las tablas de una base de datos dada.

Para mostrar las tablas de una base de datos dada, tenemos que usar las vistas de Oracle Data Dictionary.

En Oracle, un diccionario de datos se refiere a una colección de vistas de solo lectura que almacenan información sobre una base de datos determinada, incluidos esquemas, permisos de usuario, eventos, etc.

Aunque los diccionarios de datos son de solo lectura, podemos consultar la información almacenada en ellos, incluidas las tablas.

Explore y aprendamos cómo podemos trabajar con los diccionarios de datos.

Tablas de show de Oracle Propiedad del usuario actual

El uso más común del comando show tablas es enumerar las tablas propiedad del usuario actual.

Podemos usar una consulta como se muestra:

Seleccione TABLE_NAME de user_tables;

La consulta anterior debe devolver todos los nombres de la tabla propiedad del usuario actual. Una salida de ejemplo es como se muestra:

Oracle Show tablas accesibles por el usuario actual

En algunos casos, es posible que desee mostrar todas las tablas accesibles por el usuario actual a pesar de los permisos asignados.

En tal caso, podemos consultar el diccionario de datos All_tables como se muestra en la declaración a continuación:

Seleccione Tabla_Name, propietario de all_tables donde propietario = 'hr' pedido por table_name, propietario;

Esta solicitud enumera todas las tablas accesibles por el usuario actual, como se muestra en la salida a continuación:

Oracle List todas las tablas

En casos muy mínimos, es posible que deba enumerar cada vez en todo el sistema. Para eso, debe consultar el Diccionario de datos DBA_Tables.

Es bueno tener en cuenta que solicitar una extensa recopilación de datos con un parámetro de tipo puede tener una incurrencia de rendimiento colosal. Úselo con precaución.

Seleccione TABLE_NAME, Propietario de DBA_Tables;

Esto debería volcar todas las tablas en el sistema, como se muestra en la salida de la muestra a continuación:

En algunos casos, puede recibir un error como:

[42000] [942] ORA-00942: la tabla o la vista no existe
Posición: 30

Si eso sucede, es posible que deba comunicarse con el administrador de la base de datos para otorgar permisos en el diccionario DBA_Tables, seleccione cualquier permiso de diccionario o el select_catalog_role.

Conclusión

En esta publicación, aprendió varios métodos y técnicas para enumerar las tablas en el servidor Oracle. Por ejemplo, aprendió cómo enumerar las tablas de los usuarios, las tablas de DBA, etc.