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

有關Paradox資料庫之查詢

尚未結案
帥氣銀行
一般會員


發表:13
回覆:40
積分:15
註冊:2005-05-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-28 14:48:49 IP:59.120.xxx.xxx 未訂閱
先說明一下我的狀況 Paradox資料庫內,有一會員檔,數目約10萬筆 我做了一個會員查詢的功能 希望能在edit change時就做一次查詢(模糊查詢) 程式碼如下 qCust.Close; qCust.SQL.Clear; qCust.SQL.Add(' select * from BCUST where CUST_NO like ''%' edtCust.Text '%'' '); qCust.SQL.Add(' or CUST_NAME like ''%' edtCust.Text '%'' '); qCust.Open; 但問題是也許資料筆數太多 所以每當輸入一個字的時候作搜尋造成速度很慢 請問是否有其他方法可以達成我要的功能? (在輸入資料改變時就查詢 有點像Windows的自動完成的感覺) 謝謝
P.D.
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-28 17:41:59 IP:61.71.xxx.xxx 未訂閱
引言: 先說明一下我的狀況 Paradox資料庫內,有一會員檔,數目約10萬筆 我做了一個會員查詢的功能 希望能在edit change時就做一次查詢(模糊查詢) 程式碼如下 qCust.Close; qCust.SQL.Clear; qCust.SQL.Add(' select * from BCUST where CUST_NO like ''%' edtCust.Text '%'' '); qCust.SQL.Add(' or CUST_NAME like ''%' edtCust.Text '%'' '); qCust.Open; 但問題是也許資料筆數太多 所以每當輸入一個字的時候作搜尋造成速度很慢 請問是否有其他方法可以達成我要的功能? (在輸入資料改變時就查詢 有點像Windows的自動完成的感覺) 謝謝
我之前也想像你這樣的做法, 只是like本身就很慢, 再加上每打一字就查一遍, 不用多久你的windows資源就會被耗盡, 實不建議, 後來我放棄這樣的做法, 就在打完一次查詢, 不過你想要加快速度, db檔唯一方法就是加掛索引(對要查詢的欄位), 但要注意, db檔加掛索引, 會拉高資料庫的毀損率(在系統不穩當機時), 不得不考慮哦!
帥氣銀行
一般會員


發表:13
回覆:40
積分:15
註冊:2005-05-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-29 17:18:23 IP:61.219.xxx.xxx 未訂閱
引言: 我之前也想像你這樣的做法, 只是like本身就很慢, 再加上每打一字就查一遍, 不用多久你的windows資源就會被耗盡, 實不建議, 後來我放棄這樣的做法, 就在打完一次查詢, 不過你想要加快速度, db檔唯一方法就是加掛索引(對要查詢的欄位), 但要注意, db檔加掛索引, 會拉高資料庫的毀損率(在系統不穩當機時), 不得不考慮哦!
感謝P.D前輩的指教 我目前也只能用打完之後再查詢的方法 不然查詢速度實在太慢 我只是想問問有沒有辦法可以達成而已^^" 不過TTable好像無法達到TQuery的模糊搜尋的功能?? 而index的問題之前在板上有看過一些跟Paradox的討論 所以已有心理準備...:P 再次感謝P.D前輩
P.D.
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-30 00:32:45 IP:61.71.xxx.xxx 未訂閱
引言: 感謝P.D前輩的指教 我目前也只能用打完之後再查詢的方法 不然查詢速度實在太慢 我只是想問問有沒有辦法可以達成而已^^" 不過TTable好像無法達到TQuery的模糊搜尋的功能?? 而index的問題之前在板上有看過一些跟Paradox的討論 所以已有心理準備...:P 再次感謝P.D前輩
TTable 可以做模糊搜尋啊! 你必須使用 filter功能 table1.filtered:= true; table1.filter:= '欄位=''' 搜尋字串 '*'''; 我記得應該是用 * 來代表, sql 是用 % , 不過仍然是要借助索引才能快!!!
系統時間:2024-06-21 13:28:05
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!