Ir para conteúdo
Fórum Script Brasil
  • 0

Erro Com Banco De Dados


fm.eng

Pergunta

Preciso copiar todos os registros de uma base de dados do ACCESS para um base do INTERBASE na qual tem uma tabela identica.

Quando executo o programa somente O primeiro registro é copiado. Dá o seguinte erro "Key violation". O que eu devo fazer? O codigo é esse:

procedure TForm1.FormShow(Sender: TObject);

begin

//ABRINDO AS TABELAS

// ACCESS

datamodule2.ADODataSet1.Active:=true;

while not datamodule2.ADODataSet1.Eof do

begin

// INTERBASE

DATAMODULE2.SQLDataSet1.Active:=TRUE;

DATAMODULE2.ClientDataSet1.Active:=TRUE;

DATAMODULE2.ClientDataSet1.Insert;

//COPIANDO OS REGISTROS DAS BASE ACCESS P/ INTERBASE

datamodule2.ClientDataSet1CODIGO.Value:=(datamodule2.ADODataSet1codigo.AsBCD);

datamodule2.ClientDataSet1NOME.Value:=(datamodule2.ADODataSet1nome.Value);

datamodule2.ClientDataSet1FABRICANTE.Value:=(datamodule2.ADODataSet1fabricante.Value);

datamodule2.ClientDataSet1MODELO.Value:=(datamodule2.ClientDataSet1MODELO.Value);

datamodule2.ClientDataSet1FOTO.BlobType:=(datamodule2.ADODataSet1foto.BlobType);

// GRAVANDO A TABELA INTERBASE

//

datamodule2.ClientDataSet1.ApplyUpdates(-1);

// FECHANDO A TABELA INTERBASE

datamodule2.ClientDataSet1.Active:=false;

datamodule2.SQLDataSet1.Active:=false;

end; // fim do laço de repetição

datamodule2.ADODataSet1.Active:=false;

end;

//VALEU, DESDE JÁ AGRADEÇO

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Amigo porque não usa o batchmove para copiar.. as tabelas identicas ..

Entre no site do clubedelphi da uma olhada lá nos aplicativos que tem um programa chamado troca dados que faz isso é mais simples de fazer usando batchmove doque desta forma

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...