importação de *.dbf para interbase
caros amigos estou tentando fazer uma migraçao de dados de uma tabela de clinte.dbf para tabela clientes.gdb eu numca fiços não tenho nenhuma noção gostaria de uma ajuda
veja a estrutura da minha tabela interbase
REATE TABLE CLIENTES (
CODIGO INTEGER NOT NULL,
TIPO INTEGER,
RAZAO VARCHAR(80) CHARACTER SET NONE,
FANTASIA VARCHAR(80) CHARACTER SET NONE,
NOME VARCHAR(80) CHARACTER SET NONE,
CNPJ VARCHAR(18) CHARACTER SET NONE,
INSC VARCHAR(20) CHARACTER SET NONE,
ENDERECO VARCHAR(70) CHARACTER SET NONE,
BAIRRO VARCHAR(50) CHARACTER SET NONE,
CIDADE VARCHAR(70) CHARACTER SET NONE,
UF VARCHAR(2) CHARACTER SET NONE,
FONE VARCHAR(20) CHARACTER SET NONE,
FAX VARCHAR(20) CHARACTER SET NONE,
EMALL VARCHAR(80) CHARACTER SET NONE,
REFPESS VARCHAR(200) CHARACTER SET NONE,
REFCOM VARCHAR(200) CHARACTER SET NONE,
OBS VARCHAR(200) CHARACTER SET NONE,
DTCAD DATE,
CEP VARCHAR(10) CHARACTER SET NONE,
CPF VARCHAR(14) CHARACTER SET NONE,
HABILITAR INTEGER
);
obs: o campo codigo e autoincremento
pois fiço um programinha para uma locadora(um amigo) agora ele me pedio para imigra so que eu não sei fazer.......
desde ja agradeço
veja a estrutura da minha tabela interbase
REATE TABLE CLIENTES (
CODIGO INTEGER NOT NULL,
TIPO INTEGER,
RAZAO VARCHAR(80) CHARACTER SET NONE,
FANTASIA VARCHAR(80) CHARACTER SET NONE,
NOME VARCHAR(80) CHARACTER SET NONE,
CNPJ VARCHAR(18) CHARACTER SET NONE,
INSC VARCHAR(20) CHARACTER SET NONE,
ENDERECO VARCHAR(70) CHARACTER SET NONE,
BAIRRO VARCHAR(50) CHARACTER SET NONE,
CIDADE VARCHAR(70) CHARACTER SET NONE,
UF VARCHAR(2) CHARACTER SET NONE,
FONE VARCHAR(20) CHARACTER SET NONE,
FAX VARCHAR(20) CHARACTER SET NONE,
EMALL VARCHAR(80) CHARACTER SET NONE,
REFPESS VARCHAR(200) CHARACTER SET NONE,
REFCOM VARCHAR(200) CHARACTER SET NONE,
OBS VARCHAR(200) CHARACTER SET NONE,
DTCAD DATE,
CEP VARCHAR(10) CHARACTER SET NONE,
CPF VARCHAR(14) CHARACTER SET NONE,
HABILITAR INTEGER
);
obs: o campo codigo e autoincremento
pois fiço um programinha para uma locadora(um amigo) agora ele me pedio para imigra so que eu não sei fazer.......
desde ja agradeço
Emerson1
Curtidas 0
Respostas
Sremulador
29/03/2006
vc pode utilizar o ems fb manager e a maneira mais fácil
GOSTEI 0
Gilberto Fernandes
29/03/2006
eu geralmente faço um programinha para fazer essa migração, as tabelas de origem e destino nunca sao estruturalmente iguais, uso o bde para acessar ao dbf e faço o transporte. Dá mais trabalho q uma rotina pronta, mas o resultado satisfaz
GOSTEI 0
Emerson1
29/03/2006
eu achei essa rotina que faz a importação so que os campos da tabela dbf não e igual a minha tabela
procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin
//******Abre Tabela Origem**********
DBF.DatabaseName:=Edit1.Text;
DBF.TableName:=Edit2.Text;
DBF.Open;
//******Abre Tabela Destino*********
BancoGDB.DatabaseName:=Edit3.Text;
BancoGDB.Params.Clear;
BancoGDB.Params.Add(´user_name=´+Edit5.Text);
BancoGDB.Params.Add(´password=´+Edit6.Text);
GDB.TableName:=Edit4.Text;
BancoGDB.Open;
GDB.Open;
Transacao.Active:=true;
//***************************************
Dbf.First;
While not DBF.Eof do
begin
GDB.Insert;
For i:=0 to DBF.FieldCount-1 do
GDB.Fields[i].Value:=DBF.Fields[i].Value;
GDB.Post;
DBF.Next;
end;
Showmessage(Inttostr(GDB.RecordCount)+´ Registros Importados Com Sucesso...´);
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DBF.Close;
BancoGDB.Close;
GDB.Close;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #27 then
Close;
end;
end.
e neu conhecimento ainda e muito pouco em delphi mas com ajuda de vcs eu vou melhorar.......obrigado a todos
procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin
//******Abre Tabela Origem**********
DBF.DatabaseName:=Edit1.Text;
DBF.TableName:=Edit2.Text;
DBF.Open;
//******Abre Tabela Destino*********
BancoGDB.DatabaseName:=Edit3.Text;
BancoGDB.Params.Clear;
BancoGDB.Params.Add(´user_name=´+Edit5.Text);
BancoGDB.Params.Add(´password=´+Edit6.Text);
GDB.TableName:=Edit4.Text;
BancoGDB.Open;
GDB.Open;
Transacao.Active:=true;
//***************************************
Dbf.First;
While not DBF.Eof do
begin
GDB.Insert;
For i:=0 to DBF.FieldCount-1 do
GDB.Fields[i].Value:=DBF.Fields[i].Value;
GDB.Post;
DBF.Next;
end;
Showmessage(Inttostr(GDB.RecordCount)+´ Registros Importados Com Sucesso...´);
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DBF.Close;
BancoGDB.Close;
GDB.Close;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #27 then
Close;
end;
end.
e neu conhecimento ainda e muito pouco em delphi mas com ajuda de vcs eu vou melhorar.......obrigado a todos
GOSTEI 0
Emerson1
29/03/2006
Gilberto Fernandes
usei o programa que mecionei acima e abri as tabela .dbf no datebasedeskop e fiço as mudanças nas tabela para ficar iguail como você mencionou cara deu certo valeuuuuuu..............
um abraço a todos..........
******
e vivendo e aprendendo e morendo sem saber nada....
usei o programa que mecionei acima e abri as tabela .dbf no datebasedeskop e fiço as mudanças nas tabela para ficar iguail como você mencionou cara deu certo valeuuuuuu..............
um abraço a todos..........
******
e vivendo e aprendendo e morendo sem saber nada....
GOSTEI 0