update affected more than 1 record

Delphi

24/11/2004

Caros amigos do forum

utilizo os componentes dbexpress+firebird 1.5 com drive da IUB
estou tentando atualizar uma instrução sql com join mas aparece esta mensagem ( update affected more than 1 record ) alguém já se deparou com este problema.

desde já agradeço

Nery :shock:


Nery

Nery

Curtidas 0

Respostas

Bruno_fantin

Bruno_fantin

24/11/2004

Verifica as chaves na tabela....
Verifica se você setou todos as chaves no datasetprovider...
Coloca o datasetprovider para só atualizar através das chaves...


GOSTEI 0
Arc

Arc

24/11/2004

[b:c37345c821]update affected more than 1 record[/b:c37345c821]

Quer dizer que está sendo atualizado mais de um registro na tabela, ..., agora isso pra vc ta errado ????? tem que atualizar só um registro ????


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

24/11/2004

é verdade... onde está o erro? explique melhor e publique a sua instrução. vai ser mais fácil tentar ajudar...


GOSTEI 0
Bruno_fantin

Bruno_fantin

24/11/2004

O erro é o seguinte...

Se ele da um select... Dar um Edit no dataset... Alterar uma linha depois dar um post... O componente de acesso ao banco (ado, ibx, sql) criar uma instrução de update e roda no banco... O banco por sua vez retorna o numero de linhas afetadas... O componente espera somente uma linha (pois foi apenas uma linha alterada no dataset)... Se o numero for maior que um o mesmo dar rollback no banco e retorna esse erro...


GOSTEI 0
Nery

Nery

24/11/2004

Obrigado pessoal

as dicas foram de grande importancia para resolver o problema,
ele estava na chave primaria da tabela q seria atualizada.

faleu!!!

[]´s a todos


GOSTEI 0
POSTAR