Upload
frascuelo-neri
View
219
Download
0
Embed Size (px)
Citation preview
3Copyright © 2010, Oracle. Todos los derechos reservados.
Gestión de Objetoscon Vistas de Diccionario de Datos
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 2
Objetivos
Al finalizar esta lección, debería estar capacitado para lo siguiente:
• Utilizar las vistas del diccionario de datos para buscar datos en los objetos
• Consultar varias vistas del diccionario de datos
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 3
Agenda
• Introducción al diccionario de datos• Consulta de las vistas de diccionario para obtener lo siguiente:
– Información sobre tablas
– Información sobre columnas
– Información sobre restricciones
• Consulta de las vistas de diccionario para obtener lo siguiente:– Información sobre vistas
– Información sobre secuencias
– Información sobre sinónimos
– Información sobre índices
• Adición de un comentario a una tabla y consulta de las vistas de diccionario para obtener información sobre comentarios
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 4
Diccionario de Datos
Servidor de Oracle
Tablas que contienen datos de negocio:EMPLOYEESDEPARTMENTSLOCATIONSJOB_HISTORY...
Vistas del diccionario de datos:DICTIONARYUSER_OBJECTSUSER_TABLESUSER_TAB_COLUMNS...
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 5
Estructura del Diccionario de Datos
Servidor de Oracle
Consta de:
– Tablas base
– Vistas con acceso para usuarios
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 6
Estructura del Diccionario de Datos
Ver reglas de nomenclatura:
Prefijo de Vista Objetivo
USER Vista del usuario (contenido del esquema; propiedad del usuario)
ALL Vista del usuario ampliada (contenido al que puede acceder)
DBA Vista del administrador de la base de datos (contenido de los esquemas de todos los usuarios)
V$ Datos relacionados con el rendimiento
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 7
Uso de las Vistas de Diccionario
Empezar en DICTIONARY. Contiene los nombres y las descripciones de las tablas y vistas del diccionario.
DESCRIBE DICTIONARY
SELECT *FROM dictionaryWHERE table_name = 'USER_OBJECTS';
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 8
Vistas USER_OBJECTS y ALL_OBJECTS
USER_OBJECTS:
• Consulte USER_OBJECTS para ver todos los objetos que posee.
• Mediante USER_OBJECTS, puede obtener una lista de todos los nombres y tipos de objetos del esquema, además de la siguiente información:– Fecha de creación– Fecha de la última modificación– Estado (válido o no válido)
ALL_OBJECTS:
• Consulte ALL_OBJECTS para ver todos los objetos a los que tiene acceso.
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 9
Vista USER_OBJECTS
SELECT object_name, object_type, created, statusFROM user_objectsORDER BY object_type;
…
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 10
Agenda
• Introducción al diccionario de datos• Consulta de las vistas de diccionario para obtener lo siguiente:
– Información sobre tablas
– Información sobre columnas
– Información sobre restricciones
• Consulta de las vistas de diccionario para obtener lo siguiente:– Información sobre vistas
– Información sobre secuencias
– Información sobre sinónimos
– Información sobre índices
• Adición de un comentario a una tabla y consulta de las vistas de diccionario para obtener información sobre comentarios
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 11
Información sobre Tablas
USER_TABLES:
DESCRIBE user_tables
SELECT table_nameFROM user_tables;
…
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 12
Información sobre Columnas
USER_TAB_COLUMNS:
DESCRIBE user_tab_columns
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 13
Información sobre Columnas
SELECT column_name, data_type, data_length, data_precision, data_scale, nullableFROM user_tab_columnsWHERE table_name = 'EMPLOYEES';
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 14
Información sobre Restricciones
• USER_CONSTRAINTS describe las definiciones de restricciones en la tabla.
• USER_CONS_COLUMNS describe las columnas que posee y que se han especificado en las restricciones.
DESCRIBE user_constraints
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 15
USER_CONSTRAINTS: Ejemplo
SELECT constraint_name, constraint_type, search_condition, r_constraint_name, delete_rule, statusFROM user_constraintsWHERE table_name = 'EMPLOYEES';
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 16
Consulta de USER_CONS_COLUMNS
DESCRIBE user_cons_columns
SELECT constraint_name, column_nameFROM user_cons_columnsWHERE table_name = 'EMPLOYEES';
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 17
Agenda
• Introducción al diccionario de datos• Consulta de las vistas de diccionario para obtener los siguiente:
– Información sobre tablas
– Información sobre columnas
– Información sobre restricciones
• Consulta de las vistas de diccionario para obtener lo siguiente:– Información sobre vistas
– Información sobre secuencias
– Información sobre sinónimos
– Información sobre índices
• Adición de un comentario a una tabla y consulta de las vistas de diccionario para obtener información sobre comentarios
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 18
Información sobre Vistas
DESCRIBE user_views
SELECT view_name FROM user_views;
SELECT text FROM user_views WHERE view_name = 'EMP_DETAILS_VIEW';
1
2
3
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 19
Información sobre Secuencias
DESCRIBE user_sequences
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 20
Confirmación de Secuencias
• Verificar los valores de secuencia en la tabla de diccionario de datos USER_SEQUENCES.
• La columna LAST_NUMBER muestra el siguiente número de secuencia disponible si no se especifica NOCACHE.
SELECT sequence_name, min_value, max_value, increment_by, last_number
FROM user_sequences;
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 21
Información sobre Índices
• USER_INDEXES proporciona información sobre los índices.
• USER_IND_COLUMNS describe las columnas que comprenden los índices y las columnas de los índices de las tablas.
DESCRIBE user_indexes
…
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 22
USER_INDEXES: Ejemplos
SELECT index_name, table_name,uniquenessFROM user_indexesWHERE table_name = 'EMPLOYEES';
SELECT index_name, table_nameFROM user_indexesWHERE table_name = 'emp_lib';
a
b
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 23
Consulta USER_IND_COLUMNS
DESCRIBE user_ind_columns
SELECT index_name, column_name,table_nameFROM user_ind_columnsWHERE index_name = 'lname_idx';
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 24
Información sobre Sinónimos
DESCRIBE user_synonyms
SELECT * FROM user_synonyms;
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 25
Agenda
• Introducción al diccionario de datos• Consulta de las vistas de diccionario para obtener los siguiente:
– Información sobre tablas
– Información sobre columnas
– Información sobre restricciones
• Consulta de las vistas de diccionario para obtener lo siguiente:– Información sobre vistas
– Información sobre secuencias
– Información sobre sinónimos
– Información sobre índices
• Adición de un comentario a una tabla y consulta de las vistas de diccionario para obtener información sobre comentarios
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 26
Adición de Comentarios a una Tabla
• Puede agregar comentarios a una tabla o columna mediante la sentencia COMMENT:
• Los comentarios se pueden visualizar a través de las vistas del diccionario de datos:– ALL_COL_COMMENTS– USER_COL_COMMENTS– ALL_TAB_COMMENTS– USER_TAB_COMMENTS
COMMENT ON TABLE employeesIS 'Employee Information';
COMMENT ON COLUMN employees.first_nameIS 'First name of the employee';
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 27
Prueba
Las vistas de diccionario que se basan en tablas del diccionario contienen información como:
1. Definiciones de todos los objetos de esquema en la base de datos
2. Valores por defecto de las columnas
3. Información sobre restricciones de integridad
4. Privilegios y roles otorgados a cada usuario
5. Todo lo anterior
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 28
Resumen
En esta lección, debe haber aprendido a buscar información sobre los objetos a través de las siguientes vistas de diccionario:• DICTIONARY• USER_OBJECTS• USER_TABLES• USER_TAB_COLUMNS• USER_CONSTRAINTS• USER_CONS_COLUMNS• USER_VIEWS• USER_SEQUENCES• USER_INDEXES• USER_SYNONYMS
Copyright © 2010, Oracle. Todos los derechos reservados.3 - 29
Práctica 3: Visión General
En esta práctica se abordan los siguientes temas:• Consulta de las vistas de diccionario para obtener información sobre
tablas y columnas• Consulta de las vistas de diccionario para obtener información sobre
restricciones• Consulta de las vistas de diccionario para obtener información sobre
vistas• Consulta de las vistas de diccionario para obtener información sobre
secuencias• Consulta de las vistas de diccionario para obtener información sobre
sinónimos• Consulta de las vistas de diccionario para obtener información sobre
índices• Adición de un comentario a una tabla y consulta de las vistas de
diccionario para obtener información sobre comentarios