handdator

Visa fullständig version : mysql newbie helP


sundvall
2011-03-07, 19:05
noob problem mysql/php

Databas som lagrar filmer, var film får såklart ett unikt id.

När jag sedan listar filmerna så blir det som väntat, dvs första tillagda film får id1, andra id2 etc etc.

However, problemet kommer när jag i databasen tex raderar alla filmer, och vill börja addera på nytt, så vill jag att första filmen återigen ska ha id1, andra id2 etc, så blir inte fallet.

Det som händer är att id minns föregående lista, dvs den nya filmen som jag vill ska ha id1 får tex id 24 (eller whatever fortsättning det är på den gamla listan).

Hur åtgärdas detta?

sudoo
2011-03-07, 19:11
Det åtgärdas inte om du använder auto increment. Ger det dig några problem att det blir på detta viset? Du kan ju annars göra ett manuellt index, men det kommer kräva mer kod och prestanda för att ändra om alla ID-fält såfort en film raderas.

Generellt sett använder man ju enbart IDt internt i koden, det visas aldrig mot användaren i "gränssnittet", så att de inte kommer i ordning bör inte vara något problem.

pbiddy
2011-03-07, 19:11
Ett sätt är att deleta tabellen och skapa den igen, tror det va så jag gjorde på min uppgift :)
Annars finns det mer 1337 sätt att göra det på, typ:

DBCC CHECKIDENT (tblHej, RESEED, 1);

Fast grundtanken är väl att autoinkrementgrejen alltid ska ticka uppåt?