Saltar al contenido

Listar todas las tablas de un usuario determinado en Oracle

Si hallas algún error en tu código o proyecto, recuerda probar siempre en un ambiente de testing antes añadir el código al trabajo final.

Solución:

Esto obtendrá todas las tablas donde el usuario “JOHN” es el propietario:

SELECT * FROM USER_TABLES;

o

SELECT * FROM ALL_TABLES WHERE OWNER = 'JOHN';

([TL;DR] 'JOHN' típicamente necesita estar en mayúsculas. Suponiendo que el usuario john fue creado usando el CREATE USER john ... entonces el comportamiento predeterminado de Oracle es convertir todos los nombres de objetos (es decir, tablas, columnas, usuarios, etc.) a mayúsculas. Cuando consulte el diccionario de datos, los detalles de la tabla se almacenarán en este caso (y no en el caso que usó en el comando original a menos que lo envuelva entre comillas dobles).

Para listar la tabla puedes usar

SELECT * FROM ALL_TABLES WHERE OWNER = 'JOHN';

PARA ver el tamaño del esquema que puede utilizar

SELECT sum(bytes)
  FROM dba_segments
 WHERE owner = 'JOHN'

Dado que ha iniciado sesión como propietario del esquema, también puede utilizar

SELECT SUM(bytes)
  FROM user_segments

Comentarios y calificaciones de la guía

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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