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

    [Mysql 5] Chiave primaria AUTO_INCREMENT riassegna valori cancellati

    Definizione copiata da un manula tecnico
    se si svuota completamente l'intera tabella dal suo contenuto, ma non si modifica la struttura, il campo Auto_increment riprenderà la numerazione dal valore iniziale. Invece, se vengono eliminati uno o più record della tabella, il nuovo record creato avrà normalmente il campo numerico incrementato di una unità, rispetto all'ultimo valore precedentemente inserito
    Ho una tabella InnoDB contenente la chiave primaria ID di tipo INT(10) unisgned Not Null
    AUTO_INCREMENT

    A volte capita (ma non ho ancora capito bene quando) che una INSERT assegni alla chiave primaria del nuovo record un valore di un recod precedentmente cancellato. E' possibile evitarlo ?

    Grazie mille

  2. #2
    dubito proprio che possa succedere un evento del genere. Autoincrement va sempre avanti a meno che tu non inserisca in modo esplicito il valore di un id precedentemente cancellato.

    Nella citazione del manuale c'e' una imprecisazione che potrebbe dare adito a confusione:

    Se svuoti la tabella con TRUNCATE TABLE la tabella viene nuovamente inizializzata e quindi autoincrement riprende da 1. Se la svuoti completamente con un DELETE l'autoincrement continua da dove era arrivato.

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

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 © 2026 vBulletin Solutions, Inc. All rights reserved.