INDICES SQL ORACLE
El índice de una base de datos es una estructura de datos que mejora la velocidad de las operaciones, permitiendo un rápido acceso a los registros de una tabla.
Los índices pueden ser creados usando una o más columnas, preparando la base de datos tanto para búsquedas rápidas al azar como para ordenaciones eficientes de los registros.
El espacio en disco requerido para almacenar el índice es típicamente menor que el espacio de almacenamiento de la tabla, lo que da la posibilidad de almacenar en memoria los índices de tablas que no cabrían en ella.
Se pueden crear indices en tablas nuevas:
CREATE TABLE Cliente(
DNI VARCHAR(9) not null,
NOMBRE VARCHAR(20),
EMAIL VARCHAR(50),
CONSTRAINT PK_DNI PRIMARY KEY (DNI)
);
En esta tabla, tras definir los campos se crea un indice automaticamente PK_DNI con el campo DNI.
Otra forma de crear un indice es con una tabla ya existente:
CREATE TABLE Cliente(
DNI VARCHAR(9) not null PRIMARY KEY,
NOMBRE VARCHAR(20),
EMAIL VARCHAR(50)
);
CREATE INDEX CLIENTE_INDEX ON Cliente(DNI);
Se le puede indicar al indice que el campo indexado tenga un valor unico (solo exista un registro con este valor):
CREATE UNIQUE CLIENTE_INDEX ON Cliente(DNI);
Podemos monitorizar los indices que hemos creado. Esto nos permite saber si el index se esta utilizando en alguna de las consultas realizadas.
ALTER INDEX CLIENTE_INDEX MONITORING USAGE;
Si queremos quitar esta opción:
ALTER INDEX CLIENTE_INDEX NOMONITORING USAGE;
Para borrar un indice:
DROP INDEX CLIENTE_INDEX;
No hay comentarios:
Publicar un comentario