![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 2.10.2006 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Stworzyłem sobie tabelkę z użytkownikami i ustawiłem user_id na auto_increment ale muszę sam zadbać aby wartość była zwiększana (IMG:style_emoticons/default/sad.gif) Wiecie jak zrobić aby samo się zwiększało i co ważniejsze - jak usunę rekord z userem to aby user_id które usunąłem było następnym razem wykorzystane? kod :
Możecie mi powiedzieć jak to zrobić aby nie sprawdzać user_id i nie wpisywać go tylko aby samo zostało nadane ? przykład jak obecnie działa z usunięciem usera : mamy 10 userów o id od 1 do 10 - usuwamy usera nr 8 - czyli następnym razem muszę dodać usera o id (ilosc_userów+1) - ale to wychodzi wtedy ze nowy user ma mieć nr 10 - a ostatni ma taki id już - lub usuwamy kilku userów ze środka tablicu (np o id 0d 4 do 7) - wtedy dodając usera znowu wywala błąd (IMG:style_emoticons/default/sad.gif) Myślałem ze auto_increment samo zwiększa liczbę a tu ni - zrobiłem coś źle ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Auto_increment nie uzupełnia luk. Jeśli więc usuniesz kolesia z bazy, to mysql nie załata dziury po nim. A czemu? Wyobraź sobie, że masz tabelę, która łączy się z inną. Usuwasz sobie ze środka jakiś rekord, baza przesuwa rekordy by dziurę załatać. W tym momencie całą zależną tabelę szlag trafia bo id-ki się nie zgadzają z powodu przesunięcia. Również je musiałbyś zmienić na pasujące. Co nie znaczy, że jest to niemożliwe. Głupie ale możliwe (ale nie za pomocą auto_increment) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 10:14 |