Bazy danych SQL - Baza danych ustawienie ID
Demosknw - 24-01-2013, 17:31 Temat postu: Baza danych ustawienie ID Witam
Mam pewien problem
Mam scrypt które dodaje mi IP serwerów z gier i mam pewien kłopot do bazy danych gdy wysyłam ip
wszystko jest ok, lecz usunąłem nie aktywne serwery ip to np. mam id:
1. zajęte
2. zajęte
3. zajęte
4. puste
5. zajęte
6. zajęte
itd.
Jest jakaś komenda która grupuje id bo mam tyle pustych miejsc a chciałbym aby były one po kolei?
Z góry bardzo dziękuje.
Woytec - 24-01-2013, 18:04
Nie ma ale możesz zrobić skrypt php wywołujący kolejno odpowiednie komendy:
Kod: | <?php
$kolumna = "id";
$tabela = "serwery";
$nextid=1;
###
$query = "select $kolumna from $tabela";
$result = mysql_query($query);
while ($row=mysql_fetch_assoc($result))
{
$id=$row[$kolumna];
mysql_query("update $tabela set $kolumna='$nextid' where $kolumna='$id'");
$nextid++;
}
?> |
Dodaj tam jeszcze łączenie z bazą i ustaw odpowiednio dwie pierwsze zmienne(nazwa pola przechowująca identyfikatory i tabeli z serwerami). Przed użyciem zrób kopię zapasową tej tabeli! Nie stosuj jeżeli w innych tabelach(lub tej samej) masz odwołania do tych id, wtedy tam też trzeba zmieniać równolegle.
Demosknw - 24-01-2013, 18:14
Ok dziękuję !
|
|
|