線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1467
推到 Plurk!
推到 Facebook!

更新排序資料

答題得分者是:max5020
SleepWalker
一般會員


發表:16
回覆:20
積分:12
註冊:2004-06-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-10-09 19:06:25 IP:218.32.xxx.xxx 訂閱
目前遇到一個問題就是當我排序完資料,需要 Loop 更新全部資料時。。

EG:

5
4
3
2
1

當我更新全部資料為0 時,第一筆就會變到最後一筆

4
3
2
1
0

變成會重複更新第一筆, 以此類推。
請問是否有辦法暫停排序額不影響目前已經排序好得資料呢?

目前唯一想到的惷方法只有Array() 記住全部的Bookmark, o.o
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-10-10 11:04:21 IP:118.169.xxx.xxx 未訂閱
你犯了一個思想上錯誤,
既是排序, 排序的定義是什麼呢?
如果 5,4,3,2,1 更新完還是 0,4,3,2,1 那這樣叫排序嗎?
問題不是不能解, 你另能其他索引值來排
例如

prikey seckey
5 5
4 4
3 3
2 2
1 1

更新完, order by seckey desc
prikey seckey
0 5
4 4
3 3
2 2
1 1
heartgame0
一般會員


發表:2
回覆:29
積分:11
註冊:2008-07-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-10-29 00:00:19 IP:61.64.xxx.xxx 訂閱
無法更新全部為0時,不要觸動排序嗎?

是不知道你的排序是從那下手的。是索引排序嗎?

可以的話,想辦其它方法變成零,不是在顯示出來的資料變成零,

在程式裡跑一遍變成零後,再顯示出來,或許可行。如果不行!

用另一個資料元件,跑一遍成零後,再關掉這個資料元件!(這是你如果想不到方法,可以替代的方式)
但是應該有方法,但是不清楚你的寫法。就只能想到替代方式。

想到,你是如何起動排序的,就先關掉,更新為零後,再開起!還是一定要排序才能、才達到要更新為零的條件呢?
真是不太懂。
------
資訊業是永遠不能停止學習的行業!
但是進步都只是一點點一點點!
==可以不用理我!因為我的程度只有2成,或許不到!!
==我只會拉拉元件,打打迴圈,打打條件判斷,連連資料庫,rs232送送訊號,印表機簡單列印。
只有寫寫小小的點餐軟體(為何想寫,因為叫人家改的小東西,都ooxx,是會付錢的又不是沒錢,但是理由還是一堆)
編輯記錄
heartgame0 重新編輯於 2009-10-29 00:02:55, 註解 無‧
heartgame0 重新編輯於 2009-10-29 00:02:56, 註解 無‧
max5020
資深會員


發表:30
回覆:277
積分:321
註冊:2003-06-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-10-29 10:01:26 IP:59.120.xxx.xxx 訂閱
DataSet.Last;
while not DataSet.bof do
begin
DataSet.Edit;
DataSet.FieldByName('PK').Value:= 0;
DataSet.Post;
DataSet.Prior;
end;
編輯記錄
max5020 重新編輯於 2009-10-29 10:02:25, 註解 無‧
系統時間:2024-05-08 7:39:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!