2012-10-20 152 views
0

嘿傢伙希望你能幫助我。Mysql自動增量重置自己? xamp

我使用xamp作爲我的php開發環境,並且我意識到我的某些時候我的自動inccrement resetsts /有時會減少自己。

I.e我知道我有一張大桌子,然後在一兩週前我刪除了所有的條目。今天,有了新的條目,我檢查了第一個條目有id 1,第二個條目有id 2(此後只增加了兩個)..

雖然我懷疑框架與此有關,但我正在使用codeigniter。

想知道這是應該發生的事情,或者我應該感到安全,因爲知道自動增量不會重置。我在問這個問題,因爲我計劃在表變得太大時將數據存檔到另一個表中,並且在稍後需要存檔數據時,將它原樣複製到新表中。這顯然是一個問題,如果id已經存在,因爲自動增量重置。

+0

你是否實際上'DROP'你的表而不是刪除記錄? –

回答

3

這是某些存儲引擎的正常行爲。閱讀文檔,你會發現這是解釋。增量算法不會在某處存儲計數器值。相反,它會檢查當前的最高價值,並增加獲得新價值的價值。

+0

例如什麼引擎?我嘗試過'MyISAM'和'InnoDB',但都使用表格的AUTO_INCREMENT'設置並且不重置。 –

+1

+1那就是 - >例如InnoDB http://dev.mysql.com/doc/refman/5.6/en/innodb-auto-increment-handling.html –

+0

感謝您的信息。但根據鏈接,自動增量存儲在系統啓動時。所以假設你正在使用託管公司(如主機鱷魚),而不是xamp,自動增量實際上不會重置。此外,任何想法哪個存儲引擎不會重置自動增量? –