Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Reindexar PARADOX (.DB)

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Reindexar PARADOX (.DB) Responder citando

Estimados,

Hace algun tiempo me robaron mi notebook y con ella se me fue una rutina (que baje' de algun sitio), la cual permitia indicar un directorio y seleccionar uno o todos los archivos.DB (paradox) para REINDEXAR.

El motivo de la presente es que no puedo encontrar la mencionada rutina por ninguna parte (en internet)
... alguien la tendra por ahi ?
... me podran indicar algun sitio donde bajar esta o algo que cumpla la misma funcion ?

Gracias.
_________________
Luis Anibal Mendez
Analisis, Programacion, Asesoramiento
luisanibalmendez@gmail.com
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Yo, cuando tengo que reindexar tablas paradox, recurro al SQL.
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: SQL ? Responder citando

Amigo,
A que te refieres con "recurro al SQL" ??
_________________
Luis Anibal Mendez
Analisis, Programacion, Asesoramiento
luisanibalmendez@gmail.com
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Yo lo hago así:
    1. copio primero los datos en una tabla auxiliar con la misma estructura que la que quiero reindexar.
    2. Borro la tabla original.
    3. Creo nuevamente la tabla original.
    4. Borro la tabla auxiliar.

Este es el código. qIndex es un TQuery normal.
Código:
qIndex->Close();
qIndex->UnPrepare();
qIndex->SQL->Text = "CREATE TABLE 'Temp.db' (C_refer CHAR(12), Poblacion CHAR(5), Cargo CHAR(5))";
qIndex->Prepare();
qIndex->ExecSQL();

qIndex->Close();
qIndex->UnPrepare();
qIndex->SQL->Text = "INSERT INTO 'Temp.db' SELECT * FROM 'Electos.db'";
qIndex->Prepare();
qIndex->ExecSQL();

qIndex->Close();
qIndex->UnPrepare();
qIndex->SQL->Text = "DROP TABLE 'Electos.db'";
qIndex->Prepare();
qIndex->ExecSQL();

qIndex->Close();
qIndex->UnPrepare();
qIndex->SQL->Text = "CREATE TABLE 'Electos.db' (C_refer CHAR(12), Poblacion CHAR(5), Cargo CHAR(5), PRIMARY KEY (C_refer, Poblacion, Cargo))";
qIndex->Prepare();
qIndex->ExecSQL();

qIndex->Close();
qIndex->UnPrepare();
qIndex->SQL->Text = "INSERT INTO 'Electos.db' SELECT * FROM 'Temp.db'";
qIndex->Prepare();
try
{
     qIndex->ExecSQL();
}
catch(...)
{
}

qIndex->Close();
qIndex->UnPrepare();
qIndex->SQL->Text = "DROP TABLE 'Temp.db'";
qIndex->Prepare();
qIndex->ExecSQL();

_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.