Visualizzazione dei risultati da 1 a 3 su 3

Discussione: indice auto_incement

  1. #1

    indice auto_incement

    Qualcuno sa dirmi perchè, in maniera sembra casuale, a volte quando cancello qualche record in una tabella di un DB mysql con campo ID auto_increment, quando vado ad inserire un nuovo record questo prende uno degli ID che si sono resi disponibili dopo la cancellazione invece di prendersi un nuovo ID? C'è un modo per controllare il funzionamento? Grazie

  2. #2

    Re: indice auto_incement

    Originariamente inviato da maurizio54
    Qualcuno sa dirmi perchè, in maniera sembra casuale, a volte quando cancello qualche record in una tabella di un DB mysql con campo ID auto_increment, quando vado ad inserire un nuovo record questo prende uno degli ID che si sono resi disponibili dopo la cancellazione invece di prendersi un nuovo ID? C'è un modo per controllare il funzionamento? Grazie
    Questo e' impossibile, l'indice numerico avanza sempre.

    Se dici che prende il posto nella visualizzazione questo succede se hai cancellato dei record e la tabella non e' ottimizzata, cioe' con degli spazi vuoti nel file. Questi spazi verranno occupati da nuovi inserimenti, ma con indice progressivamente avanzante.

    Per definizione i record all'interno della tabella non sono ordinati ma sono "puntati" da un indice. L'indice e' quello ordinato, non i dati di per se. L'ordine di visualizzazione lo puoi scegliere con order by.

    Se vuoi impedire che vengano inseriti record in spazi lasciati vuoti da cancellazioni devi ottimizzare la tabella con una query prima di fare altri inserimenti.

    OPTIMAZE TABLE tabella.



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3

    Grazie....

    Naturalmente avevi ragione tu. Ora tutto funziona a meraviglia, 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.