webForumDet fria alternativet

Optimera tabell

4 svar · 219 visningar · startad av Patrik81

Patrik81Medlem sedan okt. 2001537 inlägg
#1

Eller hmmz, kanske fel ordval... iaf, sitter å pular lite med php å mysql, och nu har jag en tabell där jag vid tillfälle lägger till en rad eller två, och ibland tar bort en enstaka rad... efter en tid har det blivit så att raden där id´t är 1 nu raderats... och även id 2 och 3. MEn 4 och 5 finns kvar, men så är 6 borta... osv.

Finns det någon smart inbyggd funktion i mysql som gör att man kan få id 4 att bli 1 och id 5 att bli 2 och att nästa i ordningen då blir 3 så att man får lite struktur på det igen? Eller får man sitta och köra en loop i php?

Något som jag visserligen säkert skulle klara av att skapa, efter en stunds tänkande, men som jag drar mig lite för.

Hur som helst, all input tas tacksamt emot

MVH Patrik

UlfTMedlem sedan maj 20016 050 inlägg
#2

Strunta i att du inte har en komplett sekvens av id. Id är ju bara till för att identifiera raderna. Du visar aldrig id utåt. Därför spelar det ingen roll att du har sekvenser i stil med 3, 7, 13, 15, 16 osv. Vad som istället är viktigt, är att tabeller som refererar till den där tabellen via id, fortsätter referera till rätt rader. Där kommer du få problem om du håller på och ändrar id hela tiden, så låt id vara som det är. Strunta i att du har "luckor".

Patrik81Medlem sedan okt. 2001537 inlägg
#3

Men just i det här fallet har jag ingen annan tabell som refererar till denna, och eftersom det bara är ett litet enkelt test, så kommer det inte ställa till några bekymmer, och jag använder id´t för att identifiera den raden som skall raderas så (även om ingen annan ser id´t så behöver jag se det, och det skulle bli så mycket snyggare om jag hade låga fina nummer istället för glapp från typ 15 till 88 å sedan ett på 105... *fult* så ok, jag har nu insett baksidorna med att göra det, och kommer nog inte göra något liknande i framtiden *tar till mig rådet* ;) men om jag i detta fallet ändå vill göra som jag tänkt? ;) Går det eller får det bli en lösning via php?

MVH Patrik

UrMeMedlem sedan apr. 2001797 inlägg
#4

Först hämtar du ut hur många rader som finns inlagdra sedan gör du en for-loop som loopar en sql-fråga och som ger nya id:n :) :)

Inte för att det är nödvändigt att byta id numren direkt.

Patrik81Medlem sedan okt. 2001537 inlägg
#5

nä jag vet, men i just detta fallet ville jag börja rota omkring med id:na ;) tack för förslaget

MVH Patrik

Genererad på 363 ms · cache AV · v20260730165559-full.f96bc7eb