• No se han encontrado resultados

Diccionario de Datos. Boletín 7

N/A
N/A
Protected

Academic year: 2021

Share "Diccionario de Datos. Boletín 7"

Copied!
12
0
0

Texto completo

(1)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 1

Diccionario de

Diccionario de

Datos

Datos

Boletín 7

Boletín 7

Diccionario de datos I

Diccionario de datos I

• Contiene la definición de todos los objetos de la base de datos • Información del espacio que ocupan los objetos

• Información de las restricciones de integridad • El nombre y características de los usuarios • Los privilegios y roles que tiene cada usuario • Información de auditoria (si así se especifica) • Información estadística

(2)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 3

Diccionario de datos II

Diccionario de datos II

• El acceso es de “sólo lectura” (lo pone el manual, jua, jua) • El diccionario de datos pertenece al usuario (esquema) SYS • El diccionario de datos se estructura en tablas y vistas

• La información se encuentra en las tablas pero con un formato un poco críptico. Para el acceso al diccionario de datos se utilizan las vistas, cuya información es mucho más legible.

select object_type, count(*) from dba_objects

where owner = ‘SYS’ group by object_type;

Diccionario de datos III

Diccionario de datos III

• Los datos en las tablas base es necesario para el funcionamiento de Oracle, y por tanto sólo Oracle debe modificar el contenido de dichas tablas.

• Mucha de la información está cacheada en memoria (SGA) para un acceso más rápido.

• Cada vez que se ejecuta una sentencia SELECT, Oracle debe verificar si existen los objetos referenciados, su estado y su acceso por parte del usuario que ha lanzado la sentencia. • Naturalmente cada sentencia DDL debe modificar el

(3)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 5

Diccionario de datos IV

Diccionario de datos IV

USER_

• Sirven para consultar los objetos y demás información relativa al usuario que realiza la consulta.

• Tienen acceso todos los usuarios.

ALL_

• Sirven para consultar los objetos y demás información que el usuario es capaz de acceder, pertenezcan o no a propio usuario.

• Tienen acceso todos los usuarios.

DBA_

• Permite consultar los objetos y demás información de todos los usuarios. • Sólo tiene acceso los usuarios con el rol DBA (administradores).

Diccionario de datos V

Diccionario de datos V

DYNAMIC PERFOMANCE TABLES

• Oracle mantiene un conjunto de tablas “virtuales” que registran la actividad de la base de datos.

• No son verdaderas tablas, no se pueden modificar ni borrar.

• Tienen como prefijo V_$. Sobre dichas tablas hay creadas unas vistas con unos sinónimos públicos que llevan como prefijo V$.

(4)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 7

Diccionario de datos VI

Diccionario de datos VI

La versión 9.0.1 incluye el paquete DBMS_METADATA que permite extraer la definición de los objetos en formato:

• XML

• SQL DDL

Las Bases de Datos de

Las Bases de Datos de

Prácticas

Prácticas

(5)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 9

Presentación

Presentación

select name, created from v$database;

select instance_name,

substr(host_name,1,15), version, startup_time from v$instance;

Ficheros que la componen I

Ficheros que la componen I

select substr(file_name,1,50), substr(tablespace_name,1,15), bytes from dba_data_files; Uno o más ficheros de datos

(6)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 11

Ficheros que la componen II

Ficheros que la componen II

select group#,

substr(member,1,50) from v$logfile;

Dos o más ficheros de Log

Ficheros que la componen III

Ficheros que la componen III

select name from v$controlfile;

Uno o más ficheros de Control

(7)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 13

Que hay dentro...

Que hay dentro...

select substr(username,1,10), substr(password,1,20), substr(account_status, 1,20), substr(default_tablespace,1,10), substr(temporary_tablespace,1,10) from dba_users;

Usuarios:

Que guardan los usuarios ...

Que guardan los usuarios ...

select object_type, count(*) from dba_objects

group by object_type;

(8)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 15

Y dónde los guardan ...

Y dónde los guardan ...

select tablespace_name, contents, status, logging

from dba_tablespaces;

Tablespaces:

Y como funciona ...

Y como funciona ...

select * from v$sga;

SGA:

select substr(program,1,10), pid, spid, -- pga_used_mem, pga_alloc_mem, -- pga_max_mem

(9)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 17

Y para quien ...

Y para quien ...

select sid, substr(username,1,10), substr(osuser,1,20), substr(to_char(logon_time, 'dd/mm/yyyy hh24:mi'), 1, 17), substr(program,1,20) from v$session;

Sesiones:

Y qué hacen y como ...

Y qué hacen y como ...

select * from v$sysstat;

(10)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 19

Ahora vosotros

Ahora vosotros solitos

solitos tenéis

tenéis

que hacer ... I

que hacer ... I

Create table matriculas

( nif varchar2(10) not null, titulacion number(3) not null, curso_aca number(4) not null,

constraint pk_matriculas primary key (nif, titulacion, curso_aca), constraint ck_mat_01 check

(curso_aca > 2000) );

Crear la tabla “Matriculas”:

Ahora vosotros

Ahora vosotros solitos

solitos tenéis

tenéis

que hacer ... II

que hacer ... II

Create table asignaturas_mat

( nif varchar2(10) not null, titulacion number(3) not null, curso_aca number(4) not null, asig varchar2(4) not null, constraint pk_asignaturas primary key (nif, titulacion, curso_aca, asig), constraint fk_asi_mat foreign key

(11)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 21

Ahora vosotros

Ahora vosotros solitos

solitos tenéis

tenéis

que hacer ... III

que hacer ... III

• La definición de las tablas y sus columnas

• La definición de sus claves primarias y del índice asociado

• La definición de la clave ajena • La definición de la check

Buscar información relativa a los objetos creados:

Ahora vosotros solitos tenéis

Ahora vosotros solitos tenéis

que hacer ... IV

que hacer ... IV

dba_tables dba_tab_columns dba_indexes dba_ind_columns dba_contraints dba_cons_columns

Para ello necesitareis:

(12)

Mayo 2002 E16 - Diseño de Sistemas de Bases de datos 23

Ahora vosotros

Ahora vosotros solitos

solitos tenéis

tenéis

que hacer ... V

que hacer ... V

desc matriculas

Como ejemplo podéis probar:

select column_name "Nombre",

decode(nullable, 'N','NOT NULL') "¿Nulo?",

substr(data_type||decode(char_col_decl_length, null, decode(data_precision, null, null,

'('||data_precision||decode(data_scale,0,')', ','||data_scale||')')),

'('||char_col_decl_length||')'),1,20) "Tipo" from dba_tab_columns

where table_name = ‘MATRICULAS' and owner = ’AL0XXXXX'

order by column_id;

Y

Y

colorín

colorín

colorado

colorado

este cuento se ha acabado ...

este cuento se ha acabado ...

... a trabajar

... a trabajar

Referencias

Documento similar

[r]

Asegurar una calidad mínima en los datos es una de las tareas más difíciles de conseguir para los organismos públicos cuyo objetivo es publicar datos lo más rápidamente posible

En lo que se refiere al segundo tema, hemos elegido el prefijo RE- entre otros temas gramaticales y entre otros posibles afijos por entender que el proceso de prefijación con RE- en

SECUNDARIA COMPRENDE LOS

En el caso de realizar una análisis estructural dinámico lineal de un edificio en particular, se necesita disponer de la información correspondiente a las dimensiones en planta y

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

Gallardo, Bartolomé José (1811), Diccionario crítico-burlesco del que se titula Diccionario razonado manual para inteligencia de ciertos escritores que por equivocación han nacido