Fórum Key Violation #217548

01/03/2004

0

cursor:=crhourglass;
a:=listbox1.Items.Count;
e:=0;
while e <= a do
begin
Query1.SQL.Clear;
query1.SQL.Add(´update vennota set equipamento=´+quotedstr(edit2.text));
query1.sql.add(´where nota=´+(LISTBOX1.Items.ValueFromIndex[e]));
query1.execsql;
label3.Caption:=´Atualizando nota ´+(LISTBOX1.Items.ValueFromIndex[e]);
e:=e+1;
end;
cursor:=crdefault;

E aí galera, o que está acontecendo?Dá sempre um alerta de erro dizendo Key Violation.O que posso fazer para contornar esta situação?


Vagner Monteiro

Vagner Monteiro

Responder

Posts

01/03/2004

Eduprp

Colega

Provavelmente vc esta estourando o número de itens do listbox.
Tente o seguinte

while e <= a - 1 do
....
....

Eduardo M. Pereira


Responder

Gostei + 0

02/03/2004

Buosinet

Key violation é duplicidade de chave do banco. Essa coluna ´equipamento´ não é chave única?

No aguardo

Buosi.


Responder

Gostei + 0

04/03/2004

Mariely Fernandes

Este erro ocorre quando há duplicidade de chaves... como ex.: ValueFromIndex[e])); o comando que você inseriu. Se sua tabela é paradox, verifique no database desktop os indices que você criou...
pelo que estou vendo o nome do seu indice eh ´e´.
Verifique!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar