[firebase-br] Importação de TXT para FB, lenta...
Mr. Marshall
kelsie.z.marshall em gmail.com
Ter Set 29 09:43:16 -03 2009
Qual a maneira mais rápida de fazer uma importação de um arquivo textto
contendo registros ?
Tenho um arquivo com dois milhões de registros que sempre vou precisar
importar para dento do FB, tenho varrido este arquivo do inicio ao fim e
tenho colocado os campos direto na tabela e a cada 100 mil faço um COMMIT
if((arqRead = fopen("clientes.txt"),"rt")) == NULL)
{
ShowMessage("Problema ao abrir o arquivo de importação plano.");
}
fseek(arqRead, 0, SEEK_SET);
while (!feof(arqRead))
{
fgets(str, 2048, arqRead);
StrAnsi = AnsiString(str);
DM->IBTable1->Append();
DM->IBTable1->FieldValues["NOMECLIENTE"] = StrAnsi ;
DM->IBTable1->Post();
a cada 1000 da uma commit e reabre banco
DM->IBTransaction1->Commit();
DM->IBTransaction1->Active = true;
}
fclose(arqRead);
Está técnica funciona mas tem se demonstrado meio lenta, alguma sujestão
para melhorar a performance da importação ?
Mr. Marshall
PS:
Já li o artigo do Cantú sobre importação de TXT utilizando a técnica de
EXTERNAL FILE mas preciso fazer verificações antes de incluir os dados
poderia utilizar UDF mas...
Mais detalhes sobre a lista de discussão lista