用TQuery元件維護Paradox資料檔, 是否它自己會開啟索引檔 |
尚未結案
|
0316
一般會員 發表:32 回覆:19 積分:10 註冊:2002-07-03 發送簡訊給我 |
|
cmj
高階會員 發表:15 回覆:242 積分:226 註冊:2002-06-12 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: 請問用TQuery維護資料庫含新增、修改、刪除用(Paradox, DBF(CDX))是否要另 外自己開啟索引檔, 或是它自己會自動開啟, 還有以穩定性來講Paradox與DBF 檔, 哪一種比較好? Peter Chen補充一點 1.Delphi 只支援 MDX (DBASEIV以上)索引檔, cdx, ndx, ntx 不支援 2.僅就 paradox 與 dbf 做比較, 而且不考慮其他特殊功能的話, 我會建議你用 dbf 3.db檔具有自我管理index的功能, 也就是說 db檔與index是合併處理的, 只要 你透過bde來連結的話, 不管 db檔的索引是否有指定, 在異動時索引是會同步 異動的, 但有一個情況是, 因為query的結構是使用cachebuffer方式, 所以即 使你新增一筆以索引key值為主的資料及經儲存後, 你的記錄指標仍然不會被 更新, 必須close, open重新載入一次資料才會按key值排序, 也不會因為有 order by 就自動重序, 所以cmj兄說的就是這個意思! 不過我有實測一個狀況, 提供你參考 以query做 order by 方式排序來開檔查詢, 雖然query不支援index指定, 但要查詢的欄位如果有做key值index, 會比沒有索引來得快(我測3萬筆記錄 找一筆以locate方式, 沒有索引4秒, 有索引要1.2秒), 但得透過bde! 但使用 dbf 那就很抱歉了, 最好用 TTable Delphi的書談到index的非常少, 所以, 以上的內容全部是我自己實作得到 的經驗, 不一定是絕對正確的, 還希望大家指正! |
0316
一般會員 發表:32 回覆:19 積分:10 註冊:2002-07-03 發送簡訊給我 |
引言:P.D 兄您好:您第三點db檔是指Paradox or DBASEIV's dbf 檔, 謝謝 Peter Chen引言: 請問用TQuery維護資料庫含新增、修改、刪除用(Paradox, DBF(CDX))是否要另 外自己開啟索引檔, 或是它自己會自動開啟, 還有以穩定性來講Paradox與DBF 檔, 哪一種比較好? Peter Chen補充一點 1.Delphi 只支援 MDX (DBASEIV以上)索引檔, cdx, ndx, ntx 不支援 2.僅就 paradox 與 dbf 做比較, 而且不考慮其他特殊功能的話, 我會建議你用 dbf 3.db檔具有自我管理index的功能, 也就是說 db檔與index是合併處理的, 只要 你透過bde來連結的話, 不管 db檔的索引是否有指定, 在異動時索引是會同步 異動的, 但有一個情況是, 因為query的結構是使用cachebuffer方式, 所以即 使你新增一筆以索引key值為主的資料及經儲存後, 你的記錄指標仍然不會被 更新, 必須close, open重新載入一次資料才會按key值排序, 也不會因為有 order by 就自動重序, 所以cmj兄說的就是這個意思! 不過我有實測一個狀況, 提供你參考 以query做 order by 方式排序來開檔查詢, 雖然query不支援index指定, 但要查詢的欄位如果有做key值index, 會比沒有索引來得快(我測3萬筆記錄 找一筆以locate方式, 沒有索引4秒, 有索引要1.2秒), 但得透過bde! 但使用 dbf 那就很抱歉了, 最好用 TTable Delphi的書談到index的非常少, 所以, 以上的內容全部是我自己實作得到 的經驗, 不一定是絕對正確的, 還希望大家指正!
------
泓遠 |
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |