Ich weiß, dass dies ein alter Beitrag ist, aber ich dachte, ich würde Dinge für andere klären, die das gleiche tun können wie Sie basierend auf Ihrem Kommentar:
Wenn ein Datensatz den Löschvorgang gelöscht wird durch die aktuell ausgewählte Zeile getan wird, da ich nur 4 rudern können, wählen Sie bis, ID 5 kann nie werden gelöscht.
Sie sollten Ihre IDs nicht wirklich neu erstellen. Es vermasselt Dinge, wenn sie als Schlüssel in einer anderen Tabelle verwendet werden, und wenn Sie eine große Datenbank haben, kann das erneute Erstellen von Daten nur Zeit verschwenden, wenn es wirklich nicht nötig ist.
Was Sie tun sollten, ist ein Array der IDs zusammen mit einem Array der Einträge zu speichern, so dass Sie wissen, welche ID zu löschen, basierend auf welcher Zeile sie ausgewählt haben (oder eine andere Art der Verknüpfung der IDs und Werte, so dass Sie greifen können sie später).
Im obigen Beispiel, nachdem jemand die Zeile mit der ID löscht 3, Ihre Arrays würde wie folgt aussehen:
entries = { "a","b","d","e" }
ids = { 1,2,4,5 }
wenn jemand wählt „e“, das das vierte Element ist, können Sie einfach aus dem löschen Tabelle, bei der die ID dem vierten Wert im Array ids entspricht, in diesem Fall 5.
Auf diese Weise kann Ihre Datenbank mit den IDs 2, 34, 56 und 435 enden, wenn Elemente ständig hinzugefügt und entfernt werden. Das ist egal, weil Ihr Code verfolgt und weiß, welche ID gelöscht werden soll.
Warum Sie dies erreichen wollen? Sie müssten die Datenbank jedes Mal neu erstellen, wenn ein Benutzer etwas darin ändert. – Leandros
warum brauchst du das? anstatt eine umständliche Art der Beantwortung Ihrer Frage zu finden, würde ich lieber einen Weg finden, es nicht zu brauchen. – njzk2
nein. Ich möchte die Tabelle nicht die Datenbank neu erstellen.Es gibt ein paar Gründe warum; Beispiel: Wenn ein Datensatz gelöscht wird, wird der Löschvorgang von der aktuell ausgewählten Zeile ausgeführt, da ich nur bis Zeile 4 auswählen kann, ID 5 kann nie gelöscht werden. – Pztar