重設 SQLite 中的自增主鍵
僅使用 DELETE FROM
從 SQLite 表中刪除資料不會將自動遞增主鍵重設為 1。要實現此目的,您需要一個兩步驟過程:
<code class="language-sql">DELETE FROM your_table; DELETE FROM sqlite_sequence WHERE name = 'your_table';</code>
第一條語句從表中刪除所有行。 第二個也是關鍵的語句從 sqlite_sequence
表中刪除條目。此系統表透過自動增量列追蹤每個表的最高 ROWID。
理解SQLite的自增機制
SQLite 使用 sqlite_sequence
來管理自動遞增主鍵。 當將新行新增至具有 AUTOINCREMENT
列的表中時,SQLite 會查閱 sqlite_sequence
以尋找最大的現有 ROWID 並遞增它。
因此,直接操作sqlite_sequence
會影響自增序列。 在進行任何更改之前,請謹慎行事並充分了解潛在影響。
以上是如何重置SQLite中的自增主鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!