Importar txt para firebird
Nobres programadores, sou novato a esta linguagem visual, estou querendo importar minha base de dados em txt para firebird. Estou tendo algumas dificuldades nesta importacao. Ou quem tiver uma maneira mais rapida eu agradeco. Uso delphi 7.0 e firebird 1.5
Sem mais
Edvaldo.
Sem mais
Edvaldo.
Edvaldomoreira
Curtidas 0
Respostas
Gandalf.nho
04/04/2005
Não sei se funciona com arquivos TXT, mas se o arquivo pode ser aberto via BDE talvez o IBDataPump ajude [url]http://www.clevercomponents.com[/url]
GOSTEI 0
Arc@njo
04/04/2005
Em se tratando de importação de base TXT costumo utilizar da seguinte forma:
1. Cria-se, no Delphi atraves do componente SQLDataSet, os Selects que acessam as tabelas do Banco.
2. Ligo os SQLDatasets a um DataSetProvider e este a um ClientDataSet (um por tabela);
3. Gero os campos TFields dos ClientDataSet e logo apos executo a seguinte rotina;
Procedure TForm1.Button1Click(Sender : TObject);
Var TXT : TextFile;
Linha : String // ou AnsiString dependendo do tamanho do texto;
Begin
AssignFile(TXT, ´C:\Meus Documentos\MeuArquivo.TXT´);
ClientDataSet1.Open;
Reset(TXT)
Try
While Not EOF(TXT) do
Begin
Readln(TXT,Linha)
ClientDataSet1.FieldByName(´NOMECAMPO´).AsString:=Linha;
End;
Finally
CloseFile(TXT);
ClientDataSet1.Close;
End;
End;
Ai de acordo com a quantidade de campos do arquivo pode-se utilizar a função Copy(Linha, Inicio, Tamanho) para atribuir parte dos dados a campos distintos
Espero ter ajudado.
1. Cria-se, no Delphi atraves do componente SQLDataSet, os Selects que acessam as tabelas do Banco.
2. Ligo os SQLDatasets a um DataSetProvider e este a um ClientDataSet (um por tabela);
3. Gero os campos TFields dos ClientDataSet e logo apos executo a seguinte rotina;
Procedure TForm1.Button1Click(Sender : TObject);
Var TXT : TextFile;
Linha : String // ou AnsiString dependendo do tamanho do texto;
Begin
AssignFile(TXT, ´C:\Meus Documentos\MeuArquivo.TXT´);
ClientDataSet1.Open;
Reset(TXT)
Try
While Not EOF(TXT) do
Begin
Readln(TXT,Linha)
ClientDataSet1.FieldByName(´NOMECAMPO´).AsString:=Linha;
End;
Finally
CloseFile(TXT);
ClientDataSet1.Close;
End;
End;
Ai de acordo com a quantidade de campos do arquivo pode-se utilizar a função Copy(Linha, Inicio, Tamanho) para atribuir parte dos dados a campos distintos
Espero ter ajudado.
GOSTEI 0