Yes. However, any new inserted records will always have an auto-generated id at least one greater than the greatest id that exists in the table at the time of insert -- unless of course you overflow the 64-bit signed id in which case a random "hole" will be used if it can be found in a reasonable time. Contrast this with "autoincrement" which will always have an auto-generated id at least one greater than the greatest id that ever existed in the table at the time of insert -- and will give an "table full" error when the 64-bit signed integer overflows. So without autoincrement if you do insert -- auto id 1 insert -- auto id 2 insert -- auto id 3 delete where id == 3 insert -- auto id 3 delete where id == 2 insert -- auto id 4 - resulting records 1,3,4 vs with autoincrement insert -- auto id 1 insert -- auto id 2 insert -- auto id 3 delete where id == 3 insert -- auto id 4 delete where id == 2 insert -- auto id 5 - resulting records 1,4,5