Ola Vidigal :D
Acredito que usar a clausula FOR seria matar o processo, pois qualquer manutenção que faça com a tabela, faria disparar esta função que não agregaria em nada o processo.
Além disso, não vejo como o percentual que seria esperado a mais com o "set talk on" traria a ira do usuário, visto que teria que esperar um tempo para indexar mesmo :)
Embora interessante o modelo de atualização do António Lopes, esbarra no problema de grandes tabelas o usuário não saber como está o processo, pois no exemplo dele o termometro sai de 0 para 75 e o usuário neste meio tempo o processo estaria travado. Mas é um caso a se estudar.
Para falar a verdade, acho que a gente maqueia demais o sistema :() O usuário acha bonitinho no começo, mais 3 reindex depois nem olha mais... Na verdade se ele usa muito esse negocio e porque alguma coisa esta errada né?!
Cordialmente,
Fabiano Costa