Visualizzazione dei risultati da 1 a 7 su 7

Discussione: rinumerazione tabella

  1. #1

    rinumerazione tabella

    Ciao a tutti, torno a scrivere dopo tanto tempo.
    Ho realizzato per prova una pagina in php utilizzando un database con mySQL, http://www.visor.altervista.org/comm...nserimento.php
    Cliccando su elimina richiamo del codice php che effettua una query la quale elimina la riga corrispondente al messaggio.
    il problema è che eliminando le righe l'id delle altre righe non viene scalato ad esempio

    riga1
    riga2
    riga3
    riga4
    riga5

    poi elimando la riga 3 diventa:

    riga1
    riga2
    riga4
    riga5

    invece vorrei che venisse "rinumerato" in questo modo:

    riga1
    riga2
    riga3
    riga4

    Come potrei fare? esiste qualche funzione???
    Vi ringrazio in anticipo.

  2. #2

  3. #3
    perchè mi sembra inutile andare avanti con i numeri prima o poi così arriverò al limite impostato... si può omettere il limite nella dichiarazione dei parametri della tabella? io ho scritto

    CREATE TABLE commenti (id INT (5 ) UNSIGNED not null AUTO_INCREMENT, nome VARCHAR (250) , testo TEXT not null , PRIMARY KEY (id))

    id avrà 5 cifre si può non specificare in modo che andrà anche oltre?

  4. #4
    IMHO ti mancano le basi della progettazione di database.

    Perchè imporre un limite alla chiave primaria? Usa INT UNSIGNED ed avrai a disposizione 4294967295 chiavi. Prima di arrivare "al limite impostato" ne passerà di tempo.

  5. #5
    E comunque se si vuole fare in modo che si ri-numeri come si fa? Anche per avere un ordine visivo e sapere subito quante sono le righe del db.

  6. #6
    NON puoi modificare una chiave primaria AUTO_INCREMENT.

    Per l'ordine, è sufficiente ORDER BY id.
    Per sapere quanti sono i record COUNT(id).

  7. #7
    Originariamente inviato da filippo.toso
    IMHO ti mancano le basi della progettazione di database.

    Perchè imporre un limite alla chiave primaria? Usa INT UNSIGNED ed avrai a disposizione 4294967295 chiavi. Prima di arrivare "al limite impostato" ne passerà di tempo.

    effettivamente le basi mi mancano, ho iniziato da pochi giorni con i db e la guida che ho seguito metteva il limite alla chiave primaria... ora lo toglierò grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.