Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MYSQL] Pytanie dotyczące pola auto_increment
StasiuX
post
Post #1





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 27.07.2007
Skąd: Bytów

Ostrzeżenie: (0%)
-----


Witam.

Kolejne pytanie z serii "Lamer pyta" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .

Zastanawiam się czy jest jakaś możliwość użycia numerów skasowanych rekordów w polu ustawionym na "auto_increment". Jako, że piszę swojego małego CMSa (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) dużo go testuję i co chwila dodaję coś do bazy danych. Tak więc pole "id" w niektórych tabelach doszło już do nr 200 i przy czym wpisów jest tylko 5 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Z góry dzięki za odp.

Pozdrawiam
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




musialby szukac dziur i je wypelniec, ale to poroniony pomysl. Złą praktyką jest uzywanie starych/skasowanych ID. ID jest unikalny i nie powinien byc juz powtarzany skoro juz byl raz uzyty. Pozatym to bezsensu zabawa (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
piotrooo89
post
Post #3


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




wyczyść bazę w pma i będzie incrementował o 1.
Go to the top of the page
+Quote Post
JoShiMa
post
Post #4





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

Ostrzeżenie: (0%)
-----


Możesz zresetować licznik:

  1. ALTER TABLE nazwa_tabeli AUTO_INCREMENT=1;


Wtedy wszystkie wolne numerki większe niż 1 powinny zostać ponownie wykorzystane.

Ten post edytował JoShiMa 11.07.2008, 14:27:42
Go to the top of the page
+Quote Post
StasiuX
post
Post #5





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 27.07.2007
Skąd: Bytów

Ostrzeżenie: (0%)
-----


Dobra, nie będę kombinował pod górkę (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Jakkolwiek dzięki za odp.
Go to the top of the page
+Quote Post
piotrooo89
post
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




to nie kombinacje tylko standardowe czynności które mogą uprzyjemnić Ci pracę.
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ale o czym wy mowicie? napisano wyraźnie, ze w bazie są rekordy. A skoro są rekordy to zadne czyszczenie bazy czy tez resetowanie incrementacji nie wchodzi w rachubę. Są dziury, to niech są, po to one są by być (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Spykaj
post
Post #8





Grupa: Zarejestrowani
Postów: 104
Pomógł: 3
Dołączył: 30.05.2008
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Możesz też zacząć od jakiejś pełnej liczby, np. wszystko od 1000 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) tak np. jest tutaj:
http://opss.safo.biz/?menu=comp&sub=prob&comp=0
Go to the top of the page
+Quote Post
Black-Berry
post
Post #9





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Nie wypełniaj dziur bo któregoś dnia zechcesz np. przeniesc dany rekord do innej tabeli (np do kosza). A później na przykład będziesz chciał z kosza wyciągnąć... dobrze by było żeby ten rekord miał gdzie wrócić.
Go to the top of the page
+Quote Post
StasiuX
post
Post #10





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 27.07.2007
Skąd: Bytów

Ostrzeżenie: (0%)
-----


OK OK, zostawię jak jest (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 18.09.2025 - 07:17