Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/02/2014, 14:48
micase
 
Fecha de Ingreso: agosto-2010
Mensajes: 45
Antigüedad: 14 años, 4 meses
Puntos: 0
Mantener Indices en Sql server

Hola, estoy mirando el porcentaje de fragmentacion de esta manera

Código SQL:
Ver original
  1. SELECT OBJECT_NAME(dt.object_id),si.name, dt.avg_fragmentation_in_percent, dt.avg_page_space_used_in_percent
  2. FROM
  3. (SELECT object_id, index_id, avg_fragmentation_in_percent, avg_page_space_used_in_percent
  4. FROM sys.dm_db_index_physical_stats (DB_ID('base'), NULL, NULL, NULL, 'DETAILED')
  5. WHERE index_id = 0) AS dt --Con index_id 0 evitamos traer información de tablas que no tienen índices (Heaps)
  6. INNER JOIN sys.indexes si
  7. ON si.object_id = dt.object_id
  8. AND si.index_id = dt.index_id

luego, como la fragmentacion externa es mayor al 10% aplico lo siguiente:

Código SQL:
Ver original
  1. ALTER INDEX nombreindice ON tabla1
  2. REORGANIZE;

el problema es que cuando vuelvo a ejecutar el primer comando vuelvo a ver el mismo porcentaje de fragmentacion. Gracias

Última edición por gnzsoloyo; 11/02/2014 a las 10:14