Come riavviare il conteggio da 1 dopo aver cancellato la tabella in MS Access?

Ho una tabella in MS Access che ha un numero di tipo AutoNumber di campo

Dopo aver inserito alcune righe, l’ ID è diventato 200

Quindi, ho cancellato i record nella tabella. Tuttavia, quando ho provato a inserire una nuova riga, vedo che l’ ID inizia con 201

Come posso forzare l’ ID a riavviare con 1 , senza dover rilasciare il tavolo e crearne uno nuovo?

Puoi usare:

 CurrentDb.Execute "ALTER TABLE yourTable ALTER COLUMN myID COUNTER(1,1)" 

Spero che tu non abbia relazioni che usano questo tavolo, spero che sia vuoto, e spero tu capisca che tutto ciò che puoi (principalmente) fare affidamento su un autonumber per essere è unico. È ansible ottenere intervalli, salti, numeri molto grandi o addirittura negativi, a seconda delle circostanze. Se il tuo numero autonome significa qualcosa, hai un grosso problema in attesa di accadere.

In Access 2007 – 2010, vai su Strumenti database e fai clic su Compatta e ripristina database, e ripristinerà automaticamente l’ID.

Oltre a tutte le preoccupazioni espresse sul motivo per cui dai il culo al vero valore dell’ID (tutto è corretto che non dovresti), lascia che aggiunga questo al mix:

Se hai eliminato tutti i record dalla tabella, la compattazione del database reimposta il valore iniziale al valore originale.

Per una tabella in cui ci sono ancora dei record e hai inserito un valore nel campo di Autonumber che è inferiore al valore più alto, devi utilizzare il metodo di @ Remou per reimpostare il valore di seed. Questo vale anche se vuoi reimpostare il Max + 1 in una tabella in cui i record sono stati cancellati, ad es. 300 record, l’ultimo ID di 300, elimina 201-300, compact non resetterà il contatore (devi usare @ Il metodo di Remou – questo non era il caso nelle versioni precedenti di Jet e, in effetti, nelle prime versioni di Jet 4, la prima versione di Jet che permetteva di manipolare il valore di inizializzazione in modo programmatico.

Penso che l’unico modo per farlo sia descritto in questo articolo .

L’articolo spiega diversi metodi. Ecco un esempio:

Per eseguire questa operazione in Microsoft Office Access 2007, attenersi alla seguente procedura:

Elimina il campo Contatore dalla tabella principale.

  1. Prendere nota del nome del campo Contatore.
  2. Fare clic sulla scheda Crea e quindi fare clic su Progettazione query nel gruppo Altro.
  3. Nella finestra di dialogo Mostra tabella, selezionare la tabella principale. Fare clic su Aggiungi e quindi fare clic su Chiudi.
  4. Fare doppio clic sui campi richiesti nella vista tabella della tabella principale per selezionare i campi.
  5. Seleziona l’ordine di ordinamento desiderato.
  6. Nella scheda Progettazione, fare clic su Crea tabella nel gruppo Tipo di query. Digitare il nome della nuova tabella nella casella Nome tabella e quindi fare clic su OK.
  7. Nella scheda Progettazione, fare clic su Esegui nel gruppo Risultati.
  8. Viene visualizzato il seguente messaggio:

    Stai per incollare # row (s) in una nuova tabella.

    Fare clic su Sì per inserire le righe.

  9. Chiudi la query.
  10. Fare clic con il pulsante destro del mouse sulla nuova tabella e quindi fare clic su Visualizzazione struttura.
  11. Nella visualizzazione Progettazione per la tabella, aggiungere un campo Contatore che ha lo stesso nome di campo che si è eliminato in passaggio 1. Aggiungere questo campo Contatore alla nuova tabella e quindi salvare la tabella.
  12. Chiudere la finestra della vista Progettazione.
  13. Rinominare il nome della tabella principale. Rinominare il nuovo nome della tabella nel nome della tabella principale.