Autoincrement mező újragenerálása

Sziasztok!

Egy táblában van autoincrement mező. Törölni kellett a táblából, ezért lyuk keletkezett. Meg lehet oldani, hogy újragenerálódjon ez a mező?

Köszönettel:

Gábor

Hozzászólások

Ha a végéről töröltél,akkor egy ALTER TABLE táblanév AUTO_INCREMENT=1 megoldja, ha viszont közben van(nak) lukak, akkor azokat egyedileg tudod befoltozni.
Egyébként meg miért zavar, hogy nem folytonosak az értékek? Az autoincrement esetében nem a folytonos, hanem az egyedi érték a lényeg.

select akármi from valami order by rand() limit 1; ?

mennyi sor van a tábládba kb?

a kerdesre valaszolva, pl. eddobod az egesz oszlopot es ujra hozzaadod a tablahoz, valahogy igy:

ALTER TABLE `tabla_neve` DROP `id_mezo_neve` ;
ALTER TABLE `tabla_neve` ADD `id_mezo_neve` INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST ;

sub

* Én egy indián vagyok. Minden indián hazudik.

Szerintem első körben nézd meg, hogy mire is használjuk az elsődleges kulcsokat.

Az elsődleges kulcsoknak nem az a lényege, hogy sorfolytonos legyen, hanem, hogy egyedileg azonosítson. Az meg több, mint ártalmas, ha egyszer egyik, máskor másik az Id-je.

Random lekérdezéshez meg a SELECT foo FROM table ORDER BY RANDOM() LIMIT 1 a megoldás (MySQL, PostgreSQL, de könnyen átültethető másra is.)

----------------
Lvl86 Troll