You're not doing anything wrong. It's just a limitation due to default
settings being set so low. It's rarely a problem, but you ran into it.
Temporarily increase your MaxLocksPerFile. Push the Ctrl+G keys to open the
immediate window and paste the following code in the window:
DBEngine.SetOption dbMaxLocksPerFile, 200000
Push the enter key to execute. Now try adding an autonumber primary key to
the table again. If it doesn't work, up the number to 300000 and try again.
I'm guessing how many locks your transaction needs, so try increasing the
number a few more times to see if Jet will let you change your table.
If you're successful, change the max locks back to a more reasonable number
when you're done with your table.
DBEngine.SetOption dbMaxLocksPerFile, 20000
Chris
Microsoft MVP