Hi,
folgende Problemstellung:
Ich hab eine Lagerverwaltungssoftware welche Daten in einer MySQL-Tabelle einträgt.
Wie kann ich des realisieren dass die niedrigste "freie" ID benutzt wird und nicht die nächst höhere?
Beispiel:
ID Beschreibung
1 Artikel1
2 Artikel2
3 Artikel3
Wenn ich nun "Artikel2" mit der ID "2" lösche und danach einen neuen Artikel hinzufüge bekommt dieser die ID "4".
Wie kann ich nach der nächsten "freien" ID suchen damit neue Einträge nicht fortlaufend eingetragen werden sondern der Bestand quasi "aufgefüllt" wird?
Das einzige was mir gerade einfällt ist folgendes:
MaxID ermitteln, ID für ID (also 1 bis MaxID) durchgehen und prüfen ob diese ID existeirt, wenn die ID nicht existiert Artikel mit dieser ID anlegen, falls ID existiert weitersuchen.
Das ganze würde aber bei einer Menge im 5-stelligen Bereich ein relativ großes Rechenaufkommen haben was ich mir eigentlich nicht leisten kann da die Software auf uralten Systemen in Afrika laufen muss.
Hat jemand ne andere Lösung?
MFG
d-braun
folgende Problemstellung:
Ich hab eine Lagerverwaltungssoftware welche Daten in einer MySQL-Tabelle einträgt.
Wie kann ich des realisieren dass die niedrigste "freie" ID benutzt wird und nicht die nächst höhere?
Beispiel:
ID Beschreibung
1 Artikel1
2 Artikel2
3 Artikel3
Wenn ich nun "Artikel2" mit der ID "2" lösche und danach einen neuen Artikel hinzufüge bekommt dieser die ID "4".
Wie kann ich nach der nächsten "freien" ID suchen damit neue Einträge nicht fortlaufend eingetragen werden sondern der Bestand quasi "aufgefüllt" wird?
Das einzige was mir gerade einfällt ist folgendes:
MaxID ermitteln, ID für ID (also 1 bis MaxID) durchgehen und prüfen ob diese ID existeirt, wenn die ID nicht existiert Artikel mit dieser ID anlegen, falls ID existiert weitersuchen.
Das ganze würde aber bei einer Menge im 5-stelligen Bereich ein relativ großes Rechenaufkommen haben was ich mir eigentlich nicht leisten kann da die Software auf uralten Systemen in Afrika laufen muss.
Hat jemand ne andere Lösung?
MFG
d-braun