actualizacion de indices
Wenas, soy nuevo en esto, y tengo algunas dudas que espero que alguien pueda resolvermelas.
He programado una aplicacion en delphi utilizando Interbase como tipo de base de datos, y mis dudas son las siguientes: 1.-Si utilizo SQL para borrar datos, y esta tabla tiene campos que estan indexados, cuando ejecuto un 'DELETE FROM X WHERE FECHA<'...' ¿los indices tambien se borran de la base de datos?¿o para un mejor funcionamiento deberiahacer una copia de la base de datos y luego restaurarla para que funcionase mejor y volviera a crear unos indices nuevos? 2.-Desde codigo Delphi se pueden regenerar los indices de las tablas? Gracias de antemano y si alguien pudiera alumbrarme sobre alguna de estas preguntas, le estaria muy agradecido. Saludos: cucvalencia@hotmail.com |
Los indices son mantenidos por el motor de la base de datos, y siempre reflejan la información que contiene la tabla después de cualquier operación.
En interbase no es necesario la regeneración de indices. Es normal que después de una serie de actualizaciones/inserciones/borrados, los indices se salgan de balance. Un backup/restore los balancea nuevamente, porque son regenerados. Daria igual hacer un drop index/create index, pero no tiene sentido, salvo quizas, después de una carga masiva. No recuerdo bien como es con interbase, pero creo que desactivando el indice y volviendolo a activar (si es posible) también se regenera. En cualquier caso, durante la operación normal, no es necesario regenerar indices. hasta luego. |
La franja horaria es GMT +2. Ahora son las 01:37:53. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi