Você pode obter o ID mínimo disponível usando esta consulta:
SELECT MIN(t1.ID + 1) AS nextID
FROM tablename t1
LEFT JOIN tablename t2
ON t1.ID + 1 = t2.ID
WHERE t2.ID IS NULL
O que ele faz é unir a tabela consigo mesmo e verificar se o
min+1
ID é null
ou não. Se for nulo, esse ID estará disponível. Suponha que você tenha a tabela onde ID
são:1
2
5
6
Em seguida, esta consulta fornecerá o resultado como
3
que é o que você quer.