Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL]AUTO_INCREMENT jako zapytanie.
nobody123
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 21.12.2017

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


Witam. Mam problem. Mam pewne rekordy i mam kolumnę gdzie jest zawarty właśnie AUTO_INCREMENT
Na początku dobrze sortuje
1 Ania
2 Monika
3 Sandra
a kiedy usunę jeden rekord np. Monikę robi się wtedy
1 Ania
3 Sandra.

Istnieje może jakieś zapytanie na reset, czy odświeżanie tych numerów? Proszę o pomoc.
Go to the top of the page
+Quote Post
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Temat wałkowany n-razy. Poczytaj trochę o spójności danych. Co jeśli user Monika ma załóżmy powiązanie z kasą na koncie a nagle podstawiasz pod 2 Tomka?
Go to the top of the page
+Quote Post
nobody123
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 21.12.2017

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


A nie mógłbym tu otrzymać odpowiedzi?
Go to the top of the page
+Quote Post
trueblue
post
Post #4





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Ale to co chcesz zrobić nie ma podstaw bytu.
Kolumna tego typu nie służy do wizualizacji numeracji użytkowników. Traktuj jako wartość, której nie pokazujesz na zewnątrz.
Go to the top of the page
+Quote Post
SmokAnalog
post
Post #5





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Pamiętam jak kiedyś te dziury też mnie denerwowały (IMG:style_emoticons/default/smile.gif) Ale trzeba wyłączyć pedantyczne myślenie jak się na nie patrzy. Ta wartość nie ma mieć żadnego znaczenia dla Ciebie, równie dobrze mogłoby być usjrbrk albo inny śmietnik. To jest tylko do jednoznacznego określenia który to rekord i przy usuwaniu rekordu, pozostałe nie powinny się zmieniać. Pokochaj te dziury. (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kufel16
post
Post #6





Grupa: Zarejestrowani
Postów: 22
Pomógł: 3
Dołączył: 25.08.2016

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


Cytat(nobody123 @ 21.12.2017, 20:36:56 ) *
A nie mógłbym tu otrzymać odpowiedzi?


W petli w php-ie zrób sobie numerację, o ile w php to wystawiasz
To najprostsze rozwiązanie (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Tomplus
post
Post #7





Grupa: Zarejestrowani
Postów: 1 879
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

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


To coś jak numer PESEL obywatela.
Nie można podłożyć takiego numeru pod innego człowieka. Każdy ma swój unikalny i matematycznie weryfikowalny.

Jeżeli chciałbyś zrobić coś na wzór sortowania, to po usunięciu rekordu musiałbyś odpytać całą tabelę z imionami a następnie w specjalnej kolumnie np. `sort` albo `lp`
przepisać kody:
numer id - byłby jako AutoIncrement, a lp/sort miałby numery ustalone.

wg takiego pseudokodu.

query('DELETE `id`')
foreach(query('SELECT imiona') as key => val) {
$lp++;
query("UPDATE imiona SET lp = ? WHERE id = ?", [$lp, $val['id']])
}

Ale to i tak bezsensu. Liczby porządkowe tworzy się podczas wyświetlenia listy elementów, nie zapisuje się ich w bazie.
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: 22.08.2025 - 13:20