一般情況下有順序是因為你在新建表的時候就已經新建了 INDEX 索引(比如,自動增長的主鍵ID),所以顯示的時候默認會按主索引來排列。如果你沒有新建過主鍵ID,那麼就可能出現新增記錄亂跑的現象了。
我們先要來看一下顯示記錄的時候是如何操作的。一般,我們都使用自動編號字段來表示某條記錄的唯一性(一般名字叫 id),而 select * from table order [id] 就是按添加的順序來顯示記錄。
好了,知道了記錄如何顯示,我們就可以自己控制了,我們可以再添加一個字段,字段名字叫 orderid ,類型為長整型。當要在尾部添加記錄的時候,我們用
INSERT INTO table (orderid) SELECT max(orderid)+1 FROM table
來做。當要在中間某條記錄之前插入記錄時,我們要做的就是先取得這條記錄的 orderid,然後用
update table set orderid = orderid+1 where orderid >= 取得的orderid
insert into table (orderid) values(取得的orderid)
在顯示的時候,如果要按照自己的順序排列,就可以用 select * from table order by orderid