Domanda

Nella mia tabella tbphotos avevo 100 record. Ho quindi eliminato tutti i record e ora che voglio riavviare l'inserimento dei dati vedo che la mia chiave primaria non parte da 1, ma inizia da 101,

Esiste un modo per ripristinare la chiave primaria?

Sto utilizzando l'account amministratore MySQL.

È stato utile?

Soluzione

alter table foo AUTO_INCREMENT = 1

Altri suggerimenti

Puoi ripristinare l'incremento automatico in questo modo:

ALTER TABLE tablename AUTO_INCREMENT = 1

Ma se fai affidamento sui valori di incremento automatico, il tuo programma è molto fragile. Se è necessario assegnare numeri consecutivi ai record affinché il programma funzioni, è necessario creare una colonna separata a tale scopo e non utilizzare un ID di incremento automatico del database per questo scopo.

Se si utilizza TRUNC anziché eliminare manualmente i record, la chiave primaria verrà reimpostata.

Il codice qui sotto è il migliore se hai già alcuni dati nel database ma vuoi resettare l'ID da 1 senza cancellare i dati. Copia ed esegui nel comando SQL

ALTER TABLE members DROP ID;
ALTER TABLE members AUTO_INCREMENT = 1;
ALTER TABLE members ADD ID int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;

Questo è lo script migliore per ripristinare l'incremento automatico:

ALTER TABLE foo MODIFICA il tuo incremento di colonna int (11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT = 1;

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top