Je kan dit beter door middel van een sort oplossen (welke ordening probeer je aan te brengen?), ordenen op unique id is niet de bedoeling in database applicaties doorgaans.
Edit:
Echter. Als je het perce wilt; doe je dit:
Maak een tabel my_free_ids met alleen een integer, indexed.
Indien je een record verwijderd, doe een INSERT INTO my_free_ids VALUES (1234); waarbij 1234 het id van het verwijderde record is.
Indien je een nieuw record wilt aanmaken, doe een
SELECT FROM my_free_ids ORDER BY my_free_id LIMIT 1;
Dit geeft het laagste vrije id. Vervolgens doe je:
DELETE FROM my_free_ids WHERE id=(nieuwe id);
Om aan te geven dat die niet meer vrij is.
Get it?
[
Voor 64% gewijzigd door
Verwijderd op 13-11-2003 11:18
]