SQL Abfrage -> falsche ausgabe oder duplikate
-
Hallo, ich habe folgendes problem wo ich wirklich nicht weiter weiß:
ListView1->Items->BeginUpdate(); ListView1->Visible=false; ListView1->Items->Clear(); TQuery *Query1 = new TQuery(this); Query1->DisableControls(); Query1->DatabaseName="eingangsavis"; Query1->SQL->Add("SELECT * FROM kunden WHERE UPPER(Firma) LIKE UPPER ('"+Edit1->Text+"%') ORDER BY Firma"); Query1->Open(); Query1->First(); for(int i=0;i<Query1->RecordCount;i++) { Application->ProcessMessages(); int row; ListView1->Items->Add(); row=ListView1->Items->Count-1; ListView1->Items->Item[row]->Caption=Query1->FieldByName("Firma")->AsString; ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Strasse")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("PLZ")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Ort")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Land")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("ID")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Ansprechpartner")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Telefon")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Fax")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Mail")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Bankname")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Konto")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("BLZ")->AsString); ListView1->Items->Item[row]->SubItems->Add(Query1->FieldByName("Bemerkung")->AsString); Query1->Next(); } Query1->EnableControls(); Query1->Close(); FormKunden->LabelKundenanzahl->Caption="Gefunden: "+IntToStr(ListView1->Items->Count)+" Kunden"; ListView1->Items->EndUpdate(); ListView1->Visible=true; delete Query1;
Mein problem ist, wenn ich in die Editkomponente was eingeben dann bekomme ich manchmal mehrmals die gleichen datensätze ausgegeben oder ich bekomme werte die gar nicht mit der eingabe übereinstimmen. Kann mir vieleicht jemand sagen woran es liegt. falls es wichtig ist, ich benutze noch BDE als verbindung. Ich habe es gerade noch lokal versucht dann läuft es anscheinend gut. sobald ich das übers netzwerk laufen lassen dann kommen diese fehler. Verstehe ich nicht mein netzwerk ist 100mb schnell und das sind gerade mal 1500 datensätze.