2017-08-09 9 views
-2

我正在開發一個適用於獸醫的Java SE應用程序。Oracle從java中選擇所有帶blob列的表影響性能?

我有一個表名寵物,每個寵物都有一張照片,這是一個blob列,問題是,在選擇所有寵物時,照片欄會影響應用程序的性能?

在應用程序中,我將查詢結果傳遞給寵物對象,我想有很多行時,在內存中收取的照片會影響性能。

+0

您編寫了查詢並進行了測試。你告訴我們,它有沒有性能問題? – SandPiper

+0

請勿將斑點放在主表中。 –

回答

0

一般來說,它不應該影響性能。許多。 blob最終只是一個指向IO流的指針。當您真正開始加載照片時,性能受到影響,這些照片將開始執行IO操作。問題是,你什麼時候需要圖像數據?

正如Thorbjorn指出的,你可能不應該把斑點放在主表中。系統必須維護blob指針表,否則您的對象將不得不加載它可能不需要的圖像數據。最好有一個帶有「imageID」列或其他的單獨表格。然後添加一個「Pet.loadImage()」方法,或者一個事件觸發器,它將根據需要加載圖像。