全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1602
推到 Plurk!
推到 Facebook!

有關ClientDataSet的Locate 問題

尚未結案
ivankuo
中階會員


發表:132
回覆:272
積分:95
註冊:2002-11-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-26 12:31:32 IP:61.221.xxx.xxx 未訂閱
請教各位大大 小弟是用DBExpress的SQLQuery ClientDataSet來處理資料,但是遇到一個問題就是,當我的ClientDataSet的PacketRecords=25(假設),此Query的筆數約四萬筆資料,我要locate一筆資料的時候,他會耗掉很久的時間去將所有資料載到ClientDataSet再去locate,這樣的效能很差,請問有方式可以改善嗎?? 開發環境:D7 win2003 MSSQL2000
------
ivankuo
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-26 12:36:53 IP:147.8.xxx.xxx 未訂閱
http://www.hot.net.tw/cgi-bin/introbook2?supplier_id=001&publisher_id=002&sup_orderid=AXP008000 In short: 1) submit a query to search on the SQL server 2) clone the dataset and search in the existing data 3) perform 1 and append it to the local clientdataset
ivankuo
中階會員


發表:132
回覆:272
積分:95
註冊:2002-11-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-26 14:06:18 IP:61.221.xxx.xxx 未訂閱
william前輩: 這本書我有看過,但是我使用過CloneCursor或Data方式,不能改善效能, 假設我針對個ClientDataSet新增一筆資料的時候,當這筆資料的排序是在第三萬筆的位置,當我要更新資料的時候,cursor還是必須停留在那一筆的位置上,這時候也有可能其他user也有新增資料,若能用filter當然是最快的,但是Query的條件值是不能變的,所以不可能用filter,只剩下locate的方式。這是我的看法而已,不知道對不對,請再指教,謝謝。
------
ivankuo
系統時間:2024-11-23 6:48:32
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!