Buscar este blog

domingo, 17 de julio de 2011

Tablas

INTRODUCCIÓN.


 

Las tablas son la unidad básica de almacenamiento de datos en Oracle.

Los datos son almacenados en filas y columnas. Se define a través de:

Nombre.

Conjunto de columnas (nombre y tipo).

Al crear una tabla Oracle asigna un segmento de datos en el tablespace. Se puede controlar el espacio y el uso de ese segmento.


 

Tablas en Oracle

Tipos de tablas.


 

Tipos de Tablas:


 

Regulares.


 

Forma comúnmente usada para almacenar los datos.

• Tipo por defecto.

• Se tiene muy poco control sobre la distribución de las filas de la tabla en su almacenamiento


 

físico:


 

Particionadas.

Organizadas por Índices.

Agrupadas ( clusterizadas ).

Tablas en Oracle

Convenciones de nombres.

El nombre debe ser tan descriptivo como sea posible:

Hasta 30 caracteres.

Debe empezar por una letra.

Puede contener letras, números y caracteres especiales ($, # Y _)

Se puede documentar añadiendo comentarios:

COMMENT ON TABLE MITABLA IS 'Este es un comentario ';

COMMENT ON COLUMN MITABLA.COLUMN1 "Este es un comentario';


 


 

Tablas en Oracle


 

Operaciones con las tablas. DROP TABLE… Borrar ALTER TABLE… Modificar CREATE TABLE… Crear Sentencia Operación

Crear tablas.

La sentencia básica es:


 

CREATE TABLE nombre_tabla (nombre_columna TIPO, {nombre_columna TIPO});


 

EJEMPLO:


 

CREATE TABLE empleado (nombre VARCHAR(20), id INTEGER);

Dentro de la sintaxis de la creaci ón de tablas hay las siguientes opciones interesantes para comentar:


 

TABLESPACE

STORAGE

PCTUSED / PCTFREE


 

Crear tablas. Cl áusula STORAGE

Las opciones que se pueden definir en esta cl áusula son:

STORAGE( INITIAL entero{K|M} NEXT entero{K|M} {MINEXTENTS entero} {MAXEXTENTS entero|UNLIMITED} {PCTINCREASE %entero} )


 

Tamaño de los bloques:


 

Atributo Mínimo Máximo Defecto INITIAL 2 bloques * 5 bloques NEXT 1 bloque *

PCTUSED y PCTFREE

Controlan el espacio libre para inserciones y eliminaciones de filas en los bloques de un segmento.


 

PCTFREE:


 

Valor por defecto 10.

En cualquier otro caso: PCTFREE=100*upd/(upd + ins)


 

PCTUSED:


 

Valor por defecto 40.

PCTUSED=100-(PCTFREE +100*upd/blocksize) + 100ins/blocksize.

Tablas en Oracle PCTUSED + PCTFREE < 100 !!!

PCTUSED y PCTFREE: Ejemplo.


 

Después que un bloque se llena hasta el l ím i te permitido por PCTFREE, Oracle considera que el bloque no esta disponible para la inserci ón de nuevas filas hasta que el porcentaje del bloque no cae por debajo del parámetro PCTUSED.

Tablas en Oracle

Modificar tablas.

Para modificar tablas se utiliza ALTER TABLE.


 

EJEMPLOS:

ALTER TABLE empleado PCTUSED 30, PCTFREE 60;

ALTER TABLE empleado DROP UNUSED COLUMNS;

Esta sentencia elimina las columnas no utilizadas.

ALTER TABLE empleado ADD CONSTRAINT salesrep_pk PRIMARY KEY (id);

Añade una clave primaria en la columna id.

Tablas en Oracle

Borrar tablas.

Para borrar una tabla se utiliza DROP TABLE.

EJEMPLO:

DROP TABLE [usuario .] empleado [CASCADE CONSTRAINTS];


 

http://www.youtube.com/watch?v=xPdPwSYiF6s

No hay comentarios:

Publicar un comentario