tablas en oracle
DESCRIPTION
Tratamiento de tablas en oracle desde el punto de vista del administrador. Más en http://calejero.blogsome.com/TRANSCRIPT
Tablas en OracleTablas en Oracle
Jesús Armand Calejero RománAdministración de Bases de datos
Diplomatura de Estadística
Índice.Índice. Introducción. Tipos de tablas. Convenciones de nombres. Operaciones con las tablas. Crear tablas. Crear tablas. Cláusula STORAGE PCTUSED y PCTFREE.
◦ PCTUSED y PCTFREE. Ejemplo. Modificar tablas. Borrar tablas.
Tablas en Oracle
Introducción.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. 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 Convenciones de nombres.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.Operación Sentencia
Crear CREATE TABLE…
Modificar ALTER TABLE…
Borrar DROP TABLE…
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 PCTFREEPCTUSED 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: PCTUSED y PCTFREE: Ejemplo.Ejemplo.
◦ Después que un bloque se llena hasta el límite 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.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.Borrar tablas. Para borrar una tabla se utiliza DROP TABLE.
◦ EJEMPLO: DROP TABLE [usuario .] empleado [CASCADE
CONSTRAINTS];
Tablas en Oracle