Databases
T05-006 Creación y eliminación de Ãndices
Enunciado
Crear índices.
Sabemos que crear índices ayuda a la localización más rápida de la información contenida en las tablas.
Sintaxis:
CREATE INDEX NombreIndice ON NombreTabla (Columna1 [, Columna2 ...]);No es aconsejable que utilices campos de tablas pequeñas o que se actualicen con mucha frecuencia. Tampoco es conveniente si esos campos no se usan en consultas de manera frecuente o en expresiones.
La mayoría de los índices se crean de manera implícita cuando ponemos las restricciones
PRIMARY KEY, FOREIGN KEY o UNIQUE.Ejemplo:
Tenemos creada la siguiente tabla:
CREATE TABLE EMPLEADOS ( Cod_Cliente VARCHAR(5) PRIMARY KEY, Nombre VARCHAR(10), Apellidos VARCHAR(25), Sueldo NUMBER(2) );Crea un índice con el campo Apellidos.
CREATE INDEX miIndice ON EMPLEADOS (Apellidos);Ejercicio:
Imagina que hemos creado la siguiente tabla:
CREATE TABLE MODULOS ( Nombre VARCHAR2(100), NumHoras NUMBER, Codigo NUMBER(4), UnidadCompetencia VARCHAR2(100) );Crea un índice con el atributo Nombre.
Tipo
Solución
CREATE INDEX miIndice ON MODULOS (Nombre);
Prueba
SELECT USER_INDEXES.TABLE_NAME, UNIQUENESS, COLUMN_NAME
FROM USER_INDEXES JOIN USER_IND_COLUMNS USING (INDEX_NAME)
ORDER BY COLUMN_NAME;
Librerías (Onfly databases)
CREATE TABLE MODULOS (
Nombre VARCHAR2(100),
NumHoras NUMBER,
Codigo NUMBER(4),
UnidadCompetencia VARCHAR2(100)
);

