29. april 2015 - 18:35Der er
12 kommentarer og 1 løsning
mySQL roder rundt med id'er
Hej. Når jeg opretter ting i min database angiver den automatisk det næste id i rækken i forhold til den seneste post, hvilket er hvad den også skal. Men nu er den helt galt på den.
Jeg rodede lidt med id'erne i morges fordi nogle poster skulle 'bytte plads'. Jeg kom ved et uheld til at skrive 4223 i stedet for 423. Nu kører den så bare videre fra 4223 når jeg laver nye poster. Dvs. den næste bliver 4224. Næste 4225. Næste 4226 osv. I stedet for at køre videre fra 423.
Du skal bare lade det være som det er. Man skal tage de autoincrementede id-felter for hvad de er: unikke tal, men man må ikke antage, at de er fortløbende i den kode man nu skriver bag ved.
Men indtil nu har jeg jo bare ændret fra 4223 til 423. Og 4224 til 424 automatisk efter hver post... Så noget bør man vel kunne gøre tænker jeg... Selvom det ikke betyder noget som helst så irriterer det mig bare at den har taget det kæmpe hop.. :=)
Jeg har en anden tabel med over 6000 poster. Der er intet hul... så vidt jeg kan læse mig frem til , så kan alter table ikke redegøre det, men måske har du noget kode, der kan ? :-)
Selvfølgelig kan der komme huller. Men der er forskel at hoppe fra 1 til 3 end 400 til 4000. Det er ikke en bekymring for mig , bare en irritation.
Men tak! alter table virkede problemfrit og den kører videre fra hvor den skal nu.
Jeg forstår ikke hvorfor jeg blev bedt om at lade det være. Altså det er jo op til en selv, personligt, om man vil have et spring på 4000 eller ej, når det kan rettes :-)
Mysql kører jo med en "intern" næste-nummer. Så hvis du starter på en "frisk", så vil næste nummer være: 1, 2, 3, 4 osv.. Hvis du så med vilje eller uheld, indsætter, retter et ID til 1000, så vil næste nummer blive "sat" til: 1001 osv... Så det er jo ret logisk at den gør som den gør.
jamen hvorfor er det jeg bliver frarådet at ændre det? det er jo fuldstændig ligegyldigt om den starter fra 1 eller fra 10.00000.0000000. Der er intet i det. Det er personligt. SKal min database starte fra 123 eller 10.550. Det er da bare smagssag?
du kan ikke sammenligne det med at købe firkantede hjul. DÈT er et problem, men at køre sin database fra id 400 fremfor 4000 er jo ikke et problem, bliver aldrig et problem og kan aldrig nogensinde udvikle sig til et problem.
jakabdo - du har nok ret. jeg havde bare ikke tænkt sig på at den ville starte fra det nummer, jeg uheldigvis kom til at skifte den til :-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.