首頁  >  問答  >  主體

mysql - 拖曳重排序後怎麼插入資料庫?

是一個文章分頁,例如十頁,按序號就是1-10;1頁存一條資料,但是任意拖曳後我怎麼在資料庫排序??
每個分頁的拖曳修改內容都是即時保存資料庫的,

我現在想法就是兩種,一種是全部存本地,等它提交了全部分頁post過去,省事,但是每個分頁不能實時存到資料庫

另一種就是把重排序後的文章序號拿去資料庫修改對應的序號,12345;那麼3移到12之間就是13245;但是每次拖曳排序豈不是用對應修改很多條資料,那使用者瞎幾把亂拖,每次豈不是要修改很多次??求更好的方法

某草草某草草2687 天前1075

全部回覆(1)我來回復

  • 阿神

    阿神2017-05-18 10:58:17

    可以給每個資料加個order冗餘字段,float類型的。對於第1,2,3,4,5條數據,每條插入時order值為100,200,300,400,500.現在要把第4條數移到1,2之間,那就用1 ,2的order值總和除以2作為第4條資料新的order值,即第4條移動的資料新order值為150。這樣也不需要修改其他資料的order值。

    回覆
    0
  • 取消回覆