Mysql
 sql >> Database >  >> RDS >> Mysql

Come possiamo riutilizzare l'ID cancellato da qualsiasi tabella MySQL-DB?

Potrebbe essere possibile trovare l'ID inutilizzato più basso e forzarlo, ma è una pratica pessima, principalmente a causa dell'integrità referenziale:potrebbe essere, ad esempio, che le relazioni di altre tabelle puntino a un record eliminato, che non sarebbe riconoscibile come "eliminato" più se gli ID sono stati riutilizzati.

In conclusione:non farlo. È davvero una pessima idea.

Lettura correlata:Utilizzo di auto_increment nel manuale di MySQL

Riguardo al tuo aggiornamento:anche se hai un motivo legittimo per farlo, non credo che ci sia un modo automatico per riutilizzare i valori in un auto_increment campo. Se non del tutto, dovresti trovare il valore inutilizzato più basso (magari usando una procedura memorizzata o uno script esterno) e forzarlo come ID (se possibile).