update table does not have pk or row identifier oque está acontecendo?
Após tentar fazer um post está ocorrendo este erro oque seria ?
while (FDQUERY1.Eof <> True) do begin fdbusca.Active := false; fdbusca.sql.text := 'select ID,PACIENTE,DATA,TEXTO from '+tabela1.text+' where id='+FDQUERY1.FieldByName('ID').AsString; fdbusca.Active := true; qSqlInsere.Active := false; qSqlInsere.sql.text := 'select * from '+tabela2.text; qSqlInsere.Active := true; DSINSERIR.DataSet.Edit; DsINSERIR.DataSet.FieldByName('ID').Value := fdbusca.FieldByName('ID').Value; DsINSERIR.DataSet.FieldByName('CODCLI').Value:= fdbusca.FieldByName('PACIENTE').Value; DsINSERIR.DataSet.FieldByName('DATAREGISTRO').Value:= fdbusca.FieldByName('DATA').Value; DsINSERIR.DataSet.FieldByName('ANOTACAO').ASSTRING:= fdbusca.FieldByName('TEXTO').AsString; virgula1 := ','; DSINSERIR.DataSet.Post; fdquery1.Next;
Rodrigo Oliveira
Curtidas 0
Respostas
Jones Granatyr
23/03/2017
Opa! A mensagem de erro está indicando que sua tabela está sem uma chave primária definida. Chegou a verificar isso?
GOSTEI 0
Pedro Deola
23/03/2017
Boa noite.
Para o caso de mais alguém chegar a este tópico, vou deixar duas soluções que me ajudaram.
1) No componente da tabela, procure a propriedade IndexFieldNames e adicione a coluna que é a chave da sua tabela.
2) Pode ser que você esteja tentando salvar um campo required sem valor. No meu caso era isso o problema, apenas desmarquei esta opção.
Espero ter ajudado alguém.
Para o caso de mais alguém chegar a este tópico, vou deixar duas soluções que me ajudaram.
1) No componente da tabela, procure a propriedade IndexFieldNames e adicione a coluna que é a chave da sua tabela.
2) Pode ser que você esteja tentando salvar um campo required sem valor. No meu caso era isso o problema, apenas desmarquei esta opção.
Espero ter ajudado alguém.
GOSTEI 0