JonatasFn 0 Denunciar post Postado Maio 26, 2010 Pessoal, não sei se estou no lugar certo, mas lá vai... Eu tenho uma tabela com um campo ID, configurado com o AutoIncrement (MySQL), o problema é: cadastro 3 registros, assim: 1, 2 e 3. Depois excluo os registros 2 e 3. Quando vou cadastrar o próximo registro ele já pula para o 4, pq eu já usei o 2 e 3. Existe algo a se fazer para ele não pular os códigos q já foram utilizados? Ou seja, continuar do próximo q no caso seria o 2 ? Compartilhar este post Link para o post Compartilhar em outros sites
Daniel Sanches 0 Denunciar post Postado Junho 2, 2010 olha é o seguinte: dependendo do banco de dados utilizado, se o campo for do tipo autoincrement, isso que você disse realmente vai ocorrer.. caso queira resolver esse problema, você deverá fazer a rotina de autoincrement na mão com o comando "select MAX(ID) as MID from TABELA" na hora de incluir um novo registro, porém, no seguinte exemplo: inclui os registros: 1, 2, 3, 4 e 5. exlui o registro: 3. ao incluir um novo registro, ele será o número 6 e não o 3... caso você queira utilizar o número 3, você deverá fazer uma varredura no banco de dados, registro por registro para verificar qual número está inutilizado, mas, dessa maneira, você pode comprometer muito o desempenho do sistema. outra maneira (caso seja realmente mmmmmuuuuuuuuito necessário reutilizar números): você cria uma tabela onde registra os números que foram excluidos (inutilizados), fazendo uma checagem nessa tabela na hora de incluir, reutilizando tais números ... espero que tenha ficado claro !! abraços !!! Compartilhar este post Link para o post Compartilhar em outros sites