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

資料庫 存圖檔的問題

 
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-11-22 10:24:44 IP:59.125.xxx.xxx 訂閱
請問各位前輩
小弟目前在做資料庫存圖檔時,遇到一個很奇怪的現象,我開了兩個表格來存圖檔,其中一個放了一千張100K的JPEG的圖片,另外一個放一千張5K的圖片,開發環境是用BDE連線,QUERY DELPHI7。在我的想法,我用SELECT * FROM的方式 OPEN資料表應該開100K的資料表時間會比較久,開5K的時間會比較快,但是我發現時間是一樣的。請問各位大大這樣的情況是合理的嗎?還是有辦法可以讓5k的時間比較快一點呢?謝謝指教!!
------
Pillar Wang
P.D.
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-11-24 01:53:20 IP:61.67.xxx.xxx 未訂閱
1.不要用 select * from xxx , 改用 select 要的欄位 from xxx
2.請加上 where 條件縮小記錄範圍, 例如 where 條件出來有 10筆, 那 100K*10 與 5K * 10 , 你認為那一種開啟速度較快, 一般QUERY在開啟時, 如果沒有指定範圍, 系統是會將全部資料下載到呼叫端再執行
3.將 QUERY連結到一組 DBGRID 上, 因為我測試的結果, DBGRID 設定20列時, QUERY開啟首次會下載近似該量的記錄顯示在DBGRID上(即使不使用WHERE), 當換頁後才會再繼續下載其他記錄, 所以理論上也會加快開啟速度
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-11-24 15:57:41 IP:220.229.xxx.xxx 訂閱
您好
謝謝您的回覆,但是我目前使用的是三層式架構,用clinetdatatset,而且沒有放DBGRID,沒有用 select * from的方式。但是開一千張100K左右的圖和開4~5K左右的圖的時間是差不多的!!
------
Pillar Wang
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2006-11-25 01:07:40 IP:220.131.xxx.xxx 未訂閱
請思考幾個問題。
1.純硬體狀況。5K 一千張。也不過 5M Byte, 這樣看來。以你的電腦的速度。你很難用肉眼看出差異。
2.以軟體技術來說。你的操作經過 OS, 它會有 cache 的行為。現有的機器將個 512M 不在少數。 5M, 10M 的東西在 cache 裏。應沒什麼好大驚小怪的。
3.再來說到 clientdataset 這種東東。也許你的動作並沒有做到 limit 你選出的結果。
但是這些個元件。自己會只傳回幾筆你可以立刻看到的那些。而當你再移到想看的第N筆時。它才又再去跟 SQL Server 要一次。
也就是說。可能一次只傳回十筆。等你要看第十一筆時。它才再幫你去 query 一次後面那幾筆。這種動作。你可以用 dbgrid 來觀察。要是這樣看來。你沒法子由這邊來看出 5K, 100K 的差異了。

===================引 用 文 章===================
您好
謝謝您的回覆,但是我目前使用的是三層式架構,用clinetdatatset,而且沒有放DBGRID,沒有用 select * from的方式。但是開一千張100K左右的圖和開4~5K左右的圖的時間是差不多的!!
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2006-11-28 09:33:22 IP:59.125.xxx.xxx 訂閱
暗黑破壞神大大您好
經過您的一番解釋,大致上瞭解了。應該是CACHE的機制的問題。
那請問大大您有什麼好的建議可以指導一下嗎??因為目前透過遠端做連線的時候,速度都是非常的慢!!
------
Pillar Wang
系統時間:2024-05-19 14:42:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!