Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Auto increment
maki1234
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 16.01.2015

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


Witam, mam jeszcze jedno pytanie, nie problem (IMG:style_emoticons/default/wink.gif)

Piszę prosty skrypt na prywatne wiaomości gdzie kolumny w bazie wyglądają następująco:

ID Nadawca Odbiorca Temat Tresc Data Status

Mam zamiar zrobić usuwanie wiadomości przez odbiorców, ale ID jest ustawione na auto_increment więc jeśli usunę wiadomości o id założmy od 1 do 10 to potem przy tworzeniu wiadomości będdzie następna miała id już 11 itd. (niby ok ale założmy że ma się stronę gdzie tych pw jest dużo dziennie więc te liczby w id będą duże a pierwsze numery nie będą wgl zajęte)
Nie da się tak zrobić że po usunięciu wiadomości reszta "cofa" się o 1 id w tył? (IMG:style_emoticons/default/biggrin.gif)
Może proponujecie to inaczej zrobić?

Ten post edytował maki1234 24.01.2015, 10:26:19
Go to the top of the page
+Quote Post
rad11
post
Post #2





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

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


Nie radzil bym Ci mieszanie w PRIMARY KEY i ustawianie recznie id, zrob to w PHP indeksujac od poczatku w petli.
Go to the top of the page
+Quote Post
KsaR
post
Post #3





Grupa: Zarejestrowani
Postów: 520
Pomógł: 102
Dołączył: 15.07.2014
Skąd: NULL

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


Cytat(maki1234 @ 24.01.2015, 10:25:29 ) *
ID Nadawca Odbiorca Temat Tresc Data Status
(...)
Może proponujecie to inaczej zrobić?


Zmień ID na największy typ z UNSIGNED.
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




Cytat
w id będą duże a pierwsze numery nie będą wgl zajęte
To straszne... (IMG:style_emoticons/default/wink.gif) srednio raz na pol roku pojawia sie taki pytanie na forum. Odpowiedź jest standardowa: olej
olej te dziury, tak ma byc i koniec kropka i sie nimi w ogole nie przejmuj.
Go to the top of the page
+Quote Post
maki1234
post
Post #5





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 16.01.2015

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


Czyli niech te ID sobie będzie rosło i tak ma być ? (IMG:style_emoticons/default/smile.gif) nie spowoduje to mniejszej wydajności czy cos?
Go to the top of the page
+Quote Post
nospor
post
Post #6





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




Tak, ta ma byc. To naturalne zjawisko w bazie danych z AUTOINCREMENT
Go to the top of the page
+Quote Post
Pyton_000
post
Post #7





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Jeżeli ustawisz typ na UNSIGNED INT to możesz wpakować tam 4294967295 wiadomości. a jak to będzie za mało to BIGINT UNSIGNED który da Ci "Tylko" 18446744073709551615 wiadomości (IMG:style_emoticons/default/wink.gif)
Więc pikuś. Wydajność maleje wraz ze wzrostem ilości rekordów.

Ten post edytował Pyton_000 24.01.2015, 11:58:19
Go to the top of the page
+Quote Post
maki1234
post
Post #8





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 16.01.2015

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


No tyle to mi wystarczy ;> Dzięki (IMG:style_emoticons/default/tongue.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: 14.09.2025 - 14:44