2012-06-11 71 views
0

我有一個MySQL表看起來像這樣:phpMyAdmin的導入數據

+-------+ 
| NAME | 
+-------+ 
| James | 
| Alex | 
| Jones | 
| ... | 
+-------+ 

每個名稱是唯一的。

而且我有一個txt文件,它是需要導入到此表中的名稱列表。

該列表需要按照名稱的順序導入,但是當我使用Phpmyadmin導入它時,列表似乎在導入之前按名稱排序。

如何防止此行爲?我只是需要它被導入,沒有任何改變。當我查詢它應該以相同的順序返回結果我插入它們。

+1

爲什麼你認爲PhpMyAdmin導入這些記錄按字母順序排序? – Marco

+0

MySQL表中的記錄沒有排序;檢索有序的結果需要一個'ORDER BY'子句。如果你想要一個非自然的順序,你需要一個單獨的列(比如'order'或'rank')來達到這個目的(然而它可以[自動增加](http://dev.mysql.com/doc/en /example-auto-increment.html),以便它能夠記錄插入的順序)。 – eggyal

回答

0

默認情況下,從MySQL返回的數據之前對索引列進行排序(phpmyadmin的無關與排序)如果使用名稱列在表上定義索引,則表結果將根據此列的索引進行排序,但如果您想在最後一次插入之前對它們進行排序,則只需在設置ID作爲設計cuase中的auto_increment列,它會自動爲新插入的行增加1。 :)

+0

我添加了一個名爲「id」的柱子,並將其設置爲自動增量,現在它正在工作:D非常感謝! – user1447134

+0

歡迎您! ;) –

0

給每個記錄導入之前的ID,那麼你可以通過ID進行排序,以獲得原始佈局

+0

你是對的,謝謝。 – user1447134