Pues eso es precisamente lo que hacen los campos autonuméricos, se va incrementando automáticamente cada vez que agregas un registro a la tabla, nunca se repiten, mientras no se elimine un registro anterior nunca van a quedar espacios vacíos es decir si tengo los registros 1, 2, 3, 4 y elimino el 2 me queda 1, 3, 4 y si agrego uno nuevo va a continuar en 5 no se va a devolver al 2 ese ya queda eliminado para siempre y no se puede de ninguna manera volver a utilizar a menos que borres la tabla y empieces de cero. Lo único es que no te van a quedar así: 00001, 00002, 00003 sino 1, 2, 3... 1000, etc, pero a la hora de presentar los datos en una factura física puedes agregarle los ceros que quieras antes.
En este
video te explican cómo agregar un campo autoincrement o autonumérico.