if len(@Uso) = 4
begin
select @Uso = ‘0’ + @Uso
end
Print @Uso + ‘ ‘ + @Indice
fetch next from IndicesUsados into @Base, @Tabla, @Indice,@Uso
continue
end
close IndicesUsados
deallocate IndicesUsados
GO
Una vez ejecutada se obtiene el siguiente reporte, como ejemplo:
BASE: EJEMPLO
TABLA: [dbo].[APLICACIONES]
INDICES:
79.20[IXCY04.05.03_APLICACIONES_NroTransegr_NroTrans_RefVto]
33.30[IXCY04.05.03_APLICACIONES_Aplicaciones_NroTransegr_RefVto_NroTrans_FechaVto_Importe]
20.50 [IXC03.11.24_APLICACIONES_NroTransegr_AplNrotrans_AplRefvto]
02.10 [IXCP03.11.12_APLICACIONES_Nrotrans_NroTransegr_Importe_FechaVto_AplrefVto]
100.00[IXC04.05.27_APLICACIONES_NroTrans_NroTranselim_AplNroTrans_FechaVto_AplRefvto]
00.10 [IXC04.05.27_APLICACIONES_AplNrotrans]
00.10[IXCY04.05.07_APLICACIONES_AplNrotrans_AplRefvto_FechaVto_NroTrans_NroTransing]
TABLA: [dbo].[AWItemsAcumHistoricos]
INDICES:
00.10[IXC03.05.16_AWItemsAcumHistoricos_CodItm_Fecha]
TABLA: [dbo].[BANCOSCOD]
INDICES:
100.00[IXCY04.05.14_BANCOSCOD_CodBan_Descripcion]
Ambos resultados son importantes.
El primero, porque nos informa cuales son los índices candidatos a ser eliminados, y el segundo porque podríamos considerar eliminar algún índice con muy bajo uso y, por ejemplo, con mucho espacio utilizado.
Resumen
Una vez eliminados lo índices sin uso, será necesario controlar la perfomance y consultar a los usuarios, para asegurarnos que la eliminación de alguno de ellos no haya perjudicado alguna función de uso no habitual o esporádica.
]]>