Ich habe eine Datentabelle von zwei verschiedenen Servern ausgefüllt. Ich bin in der Lage, Anpassungen vorzunehmen, wo meine Länge & gt; 0 ist, was ich tun möchte, ist die Reihen zu entfernen, die nicht schlagen. Hier ist eine Zusammenfassung von dem, was ich habe
%Vor%Wenn dr.Length gleich Null ist, gab Ihre Auswahl keine Zeilen zurück. Wenn Sie Zeilen löschen möchten, die nicht Ihren Kriterien entsprechen, würde ich dies als einen anderen Abfragetyp implementieren. Es könnte auch sein, dass ich deine Frage komplett falsch verstehe. Können Sie Ihre Frage aktualisieren, um Ihre SQL anzuzeigen und anzugeben, wo im Codebeispiel das Problem liegt: innerhalb der Schleife oder nach der Schleife, in der Sie Ihren Kommentar haben?
Ich bin mir nicht sicher, ob ich deine Frage vollständig verstanden habe, aber es scheint, dass du versuchst, einen Eintrag aus der Sammlung zu entfernen, während du immer noch über ihn sprichst. (was einen Array-Indexfehler verursacht)
Sie sollten einen Verweis auf jeden Eintrag, den Sie löschen möchten, in einer neuen Sammlung speichern und dann alle neuen Einträge aus der alten Sammlung entfernen:
%Vor%Sie müssen ein Datarow außerhalb der Schleife erstellen. Wenn Sie zu der Zeile gelangen, die Sie entfernen möchten, weisen Sie sie der von Ihnen erstellten Zeile zu. und brich die Schleife. Dann unter der Schleife können Sie es entfernen.
%Vor%Sie können die Auflistung in umgekehrter Reihenfolge durchlaufen (für (int i = rows.length-1; x & gt; -1; x--)), um mehrere Zeilen zu entfernen, um sicherzustellen, dass Sie keine Indexfehler erhalten.