Redefinir semente de numeração automática

Eu tenho um aplicativo VB6 / Access que ocasionalmente encontra um problema com a semente do campo de numeração automática incorreta.

Digamos que exista uma tabela MYTABLE com um ID de campo de numeração automática (que também é a chave primária). Digamos que, no momento, o valor máximo de ID seja 1000. Quando o aplicativo insere um novo registro (o valor de ID não é fornecido explicitamente), por algum motivo, ele decide que o próximo valor do campo de numeração automática é 950 (e não 1001, como deveria ser). ) - para que ocorra um erro de violação da chave primária.

Encontrei um artigo da KB que descreve meus sintomas:http://support.microsoft.com/kb/884185 . Em suma, eles sugerem executar uma consulta:

ALTER TABLE MYTABLE ALTER COLUMN ID COUNTER(1001,1)

Quando tento fazer isso, ele falha com "Tipo de dados de campo inválido"

O problema é corrigido se eu abrir o banco de dados no Access e compactar / reparar, mas preciso consertar esses problemas dentro do aplicativo: ele está instalado em alguns milhares de PCs em todo o mundo e solicita às pessoas que compactem / reparar com o Access não é uma opção.

Eu uso o DAODBEngine.CompactDatabase para compactar / reparar dentro do aplicativo, mas isso não resolve o problema de propagação e são necessários alguns truques adicionais.

Espero que alguém tenha uma idéia para uma solução, estou muito perto de desesperar

Obrigado a todos

questionAnswers(3)

yourAnswerToTheQuestion