Heim >Datenbank >MySQL-Tutorial >Wie setze ich einen automatisch inkrementierenden Primärschlüssel in SQLite zurück?
Zurücksetzen automatisch inkrementierender Primärschlüssel in SQLite-Datenbanken
Diese Anleitung erklärt, wie man die automatisch inkrementierende Primärschlüsselsequenz in einer SQLite-Tabelle zurücksetzt. Dazu müssen alle vorhandenen Zeilen entfernt und der interne Zähler zurückgesetzt werden.
Die Lösung:
Um den Primärschlüssel zurückzusetzen, führen Sie diese beiden SQL-Befehle aus:
<code class="language-sql">-- Remove all data from the table DELETE FROM your_table; -- Reset the auto-increment sequence DELETE FROM sqlite_sequence WHERE name = 'your_table';</code>
Ersetzen Sie your_table
durch den tatsächlichen Namen Ihrer Tabelle.
Erklärung:
SQLite verwaltet die Tabelle sqlite_sequence
, um den höchsten Wert für die automatische Inkrementierung für jede Tabelle zu verfolgen. Durch einfaches Löschen von Zeilen wird dieser Zähler nicht zurückgesetzt; Es wird mit dem zuletzt verwendeten Wert fortgefahren. Daher stellt das Löschen des Tabelleneintrags aus sqlite_sequence
sicher, dass die nächste eingefügte Zeile einen Primärschlüsselwert von 1 erhält.
Wichtige Überlegungen:
sqlite_sequence
ist eine Systemtabelle und wird normalerweise nicht in Standardschemaansichten angezeigt.sqlite_sequence
kann das Verhalten bei der automatischen Inkrementierung stören. Verwenden Sie diese Befehle genau wie gezeigt.Das obige ist der detaillierte Inhalt vonWie setze ich einen automatisch inkrementierenden Primärschlüssel in SQLite zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!