martes, 26 de septiembre de 2023

Oracle 15- Nuevo enfoque (12). Oracle Enterprise con docker, Consultas especiales. Tablas, comentarios, columnas, campos, usuarios, esquemas, contenedores

 1. Vistas importantes

  1. V$CONTAINERS : Contenedores (BD) oracle
  2. V$INSTANCE: Información de la BD actual;
  3. ALL_TABLES: Infroamcion de las tablas
  4. ALL_USERS: Usuaios/ esquemas que son visibles al usuario actual
  5. DB_USERS: Todos los usuarios de la BD
  6. USER_USERS: Muestra los datos del usuario actual
  7. ALL_TAB_COMMENTS: Los comentarios de una tabla
  8. ALL_COL_COMMENTS: Los comentarios de las columnas de las tablas
  9. ALL_TAB_COLUMNS: Campos (columnas) de las tablas

2. Arrancar y parar desde sqlplus

Utilizar los comandos 
  • STARTUP;
  • SHUTDOWN IMMEDIATE;
Ver mas información en la web de Oracle.

3. Ver las dependencias por integridad referencial de una tabla

Hay que indicarle el usuario o esquema que es lo mismo en Oracle y el nombre de la tabla

SELECT *
FROM ALL_CONSTRAINTS
WHERE constraint_type = 'R' -- "Referential integrity" 
AND OWNER='[USUARIO O ESQUEMA]';
  AND r_constraint_name IN
    ( SELECT constraint_name
      FROM ALL_CONSTRAINTS
      WHERE table_name = '[NOMBRE_TABLA]'
        AND constraint_type IN ('U', 'P') -- "Unique" or "Primary key"

    );

4. Buscar las tablas que contienen una columna concreta.

A veces no está definia la integridad referencial y hay que buscar por nombre de columna. Por ejemplo hay una tabla de direcciones cuya clave primaria es ID_EPER. Para buscar aquella tablas del esquema que tienen esde campo hacemos uso de la vista ALL_TAB_COLUMNS;

Y si queremos saber que es cada tabla aplicamos esta consulta

SELECT A.TABLE_NAME, B.COMMENTS 
FROM ALL_TAB_COLUMNS A JOIN ALL_TAB_COMMENTS B 
  ON A.TABLE_NAME =B.TABLE_NAME AND A.column_name = 'ID_EPER';









No hay comentarios :

Publicar un comentario