Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Mysql campo contatore univoco..

    Salve a tutti vorre sapere se qualcuno è mai incappato nel fatto di avere un'id univoco per ogni record ma senza avere buchi. Mi spiego meglio con un esempio

    Mettiamo conto che io abbia una tabella con una serie di campi e un campo come chiave primaria a contatore, quindi più o meno vediamo la tabella qui sotto:
    Codice PHP:
    tabella1
     id  
    |  campo1  |  campo2 |
    ----+----------+---------|
     
    1   blabla   |  blabla |
     
    2   blabla   |  blabla |
     
    3   blabla   |  blabla /*<-- questo lo cancello*/
     
    4   blabla   |  blabla |
     
    5   blabla   |  blabla |
     
    6   blabla   |  blabla |
     
    7   blabla   |  blabla 
    Ora mettiamo conto che io debba cancellare il record con id = 3, poi quando aggiungo dei record nuovi il contatore riparte da 8 e il record con id 3 lo perdo,
    come posso fare per andare a riempire anche quelli che cancello?
    devo fare un controllo manuale?
    in ogni caso come si chiama questo tipo di operazione?
    non mi interessa che sia la chiave primaria della tabella

    Con questa vi lascio andare a pranzare.. buon appetito

  2. #2
    di solito quegli ID vengono generati automaticamente ogni volta che aggiungi un record. Non è molto importante rimepire i vuoti, basta che cisa e penso che saprai che il suo utilizzo è legato ad esempio alle clausole WHERE di una query SQL.
    Se proprio vuoi rinomarli però meglio farlo da phpMyadmin, cancella la colonna con l'ID, ricreala con AUTO_INCREMENT=1 ed è tutto fatto.

  3. #3
    questo lo so.. però mi interessa avere una colonna con un numero univoco però sequenziale, che se però cancello un record nel mezzo della tabella, al prossimo inserimento venga riempito quell'id mancante..
    avevo pensanto addirittura che invece di cancellarli, scrivergli in un campo 'cancellato' e poi quando mi ricapitava un inserimento, invece di fare un'insert fare un'update su uno dei campi con 'cancellato'.
    però mi sembrava una cosa un po' macchinosa

    volevo sapere se c'era una scappatoia oltre a questa

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.