Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como lidar com a fragmentação da coluna de ID auto_increment no MySQL


A renumeração causará confusão. Os relatórios existentes farão referência ao registro 99 e, no entanto, se o sistema renumerar, poderá renumerar esse registro para 98, agora todos os relatórios (e UIs preenchidas) estão errados. Depois de alocar um ID exclusivo, ele deve permanecer fixo.

Usar campos de ID para qualquer coisa que não seja uma numeração única simples será problemático. Ter um requisito de "sem lacunas" é simplesmente inconsistente com o requisito de poder excluir. Talvez você possa marcar os registros como excluídos em vez de excluí-los. Então realmente não há lacunas. Digamos que você esteja produzindo faturas numeradas:você teria uma fatura cancelada com valor zero com esse número em vez de excluí-la.