1.現象mysql
往一張中間表中插入幾行數據,可是插入的數據沒有按照插入的順序插入。sql
中間表:數據庫表多對多關係的時候,須要一張中間表,將它們的關係對應起來。數據庫
2.表中結構優化
因爲是中間表,沒有主鍵,只有兩個表的主鍵。3d
3.個人嘗試調試
去掉全部的事務,以排插事務會幫我重排序的可能,寫了一個for循環,for循環裏面很簡單,只是簡單的往數據庫裏插入數據,單步調試,查看數據庫中的變化狀況。blog
結果是:數據按for循環的順序一個添加了,可是確實亂序的。 可是插入後的排序是有規律的,是按照ASCII碼字典序排序的。排序
4.緣由索引
這個表加了索引,多是由於沒有主鍵的緣由,插入數據的時候會相似索引的方式,將數據重排序後再插入,按照ASCII碼升序排序,和索引同樣。 其實這張表加了索引以後就至關於一張索引表了,沒有必要去建立一張新的索引表,可能mysql作了這樣子的優化。事務
致謝:感謝您的閱讀!