Jag har en databas över medlemmar. Problemet är att jag har rensat en del och har (för enkelthetens skulle) två medlemmar. De har 'MedlemsID' 1 och 2. Id 3-8 är medlemmar som jag tagit bort. Nu vill jag ju att den senaste medlemmen ska hamna på tredje plats. Istället hamnar den på 9:e.
Hur gör jag för att den senaste medlemmen ska hamna på platsen DIREKT efter den sista medlemmen?
Det finns inga platser i en tabell i en relationsdatabas. Poster identifieras enbart av vilka värden de har i de kolumner som ingår i tabellen.
Om du vill återutnyttja medlemsnumber så kan du inte ordna det med en räknare som hanteras av databasen utan du måste själv ta fram nästa lediga nummer i så fall.
------------------ essentitia preter non sans multiplicandum
Som LarsG säger, det finns inga sådana platser i en relationsdatabas, men vill du följa LarsG's exempel med att själv hitta nästa nummer så bygg enligt principen:
Hitta största värdet på ID där det inte längre ökar med 1 för varje rad, öka på med 1 och sätt ID i den nya raden till summan av det hämtade värdet plus 1.
Se till att kolla så du inte skriver över något annat ID.
Vet inte om jag fattat frågan rätt, men om jag vill ha riktig nummerordning i en databas tar jag bort kolumnen räknare o lägger sedan in den igen.
På det sättet nollställsräknaren o räknar sedan uppåt.
Andreas
[Redigerat av AG den 07 maj 2001]
367 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25