Joe O'Connell
joeo at appoli.com
Thu Jan 12 13:41:54 CST 2012
Doug, An application that runs at a client site has a table with an auto number primary key. Occasionally Access loses track of the next value for the auto number field and attempts to reuse a number that already exists. We have never been able to figure out why this happens, but the solution is to reseed the next value with this subroutine: Public Sub FixEmpID() Dim lngSeed As Long Dim rs As DAO.Recordset Dim strSQL As String strSQL = "SELECT Max(tblEmployee.atnEmpID) AS MaxOfatnEmpID FROM tblEmployee;" Set rs = CurrentDb.OpenRecordset(strSQL) lngSeed = rs("MaxOfatnEmpID") + 1 strSQL = "ALTER TABLE tblEmployee ALTER COLUMN atnEmpID COUNTER(1," & lngSeed & ")" CurrentDb.Execute strSQL rs.Close Set rs = Nothing strSQL = "" End Sub Joe O'Connell -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Steele Sent: Wednesday, January 11, 2012 5:33 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Sleuthing - query has become non-updateable Backups: As far as I can remember we did have a backup, but it was at least 24 hours old and the client was reluctant to take the chance of losing a day's work. And I had I initially assured him it would just take a few minutes to fix....The other two times it happened, I figured it out pretty quickly. Autonumber: The situation has only occurred in tables with autonumber primary keys. Doug On Wed, Jan 11, 2012 at 10:02 AM, Mark Simms <marksimms at verizon.net> wrote: > In the start-up form, this should be fairly trivial to check for this > problem via VBA, correct ? > > Does it also happen in the case where the primary key is NOT autonumber ? > > > I can't tell you why, but every once in a while I have the problem > > where a corrupted row in a table changes the table definition, > > removing > the > > primary key designation of an autonumber field. At the same time > > the autonumber value sequence has gone bad, and the database tries > > to create > duplicate > > autonumber values. I have had to rebuild the table, as Lambert > > suggests. > > > > Doug > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com