2015-10-14 123 views
0

好了,不找排序表,我的程序員,在this situation定義等。我想按照用戶定義的順序排序。以這樣的情況:如何手動排序由用戶定義的順序

用戶添加到表,名稱,順序;第三,第一,第二和第四。因此,表看起來像這樣:

1: third 
2: first 
3: second 
4: fourth 

現在,用戶不希望看到的次序爲此表它被插入到表中,也不能從事由文字字母順序排列,但爲了最適合用戶:

first 
second 
third 
fourth 

我該怎麼做到這一點?我正在創建一個將sqlite3.lib文件導入到項目中的objective-c應用程序。因此,我使用像sqlite3_open(..)等方法

讓我知道這是不是足夠的信息量:)

回答

0

的ID就分配給用戶增加了每個項目。因此,如果用戶補充說:

1: third 
2: first 
3: second 
4: fourth 

分配ID對每個項目:

1: third (id = 0) 
2: first (id = 1) 
3: second (id = 2) 
4: fourth (id = 3) 

所以當用戶想要重新排序名單,讓他們拖每個項目拖放到他們所期望的位置。當他們完成編輯,只需更新id字段的每個項目,像這樣:

2: first (id = 0) 
3: second (id = 1) 
1: third (id = 2) 
4: fourth (id = 3) 

所以,現在當你從數據庫中重新加載數據,您只需排序您分配的ID,它將始終按照用戶的需求訂購。

+0

我喜歡這樣,這會工作,但說我叫ID索引,BC ID已經被用於1:第三,ID爲1,也不會我也遞增/遞減目的地行下面的所有行?這可能會導致更改成千上萬的用戶行將最後一行移動到最頂端 – ErickES7

+0

您是否期待那麼多的用戶輸入? – pob21

+0

也許沒有,但在該方法的另一個用途是啊 – ErickES7