2012-09-06 86 views
1

我有一個應用程序使用DAO類與Access數據庫交互,最近我將數據庫轉換爲sqlite數據庫。應用程序連接到數據庫

我不知道哪個連接方法是:設計更好如下:

  1. 創建使用公共變量時打開的應用程序,任何查詢過程中使用的唯一連接對象的互動只有一個數據庫連接在關閉應用程序時連接關閉

  2. 每次運行查詢之前創建數據庫連接,然後在將結果集加載到內存後立即關閉數據庫連接。

回答

1

我建議你封裝你的數據庫訪問,以便決定是否保持一個持久連接或不打開可以稍後改變。

由於您使用的是SqlLite,我假設它是單用戶數據庫,因此併發性,連接爭用,鎖定等不太可能是問題。

通常,重用短連接連接的主要原因通常位於多用戶Web或面向服務的系統上,其中可伸縮性和許可注意事項非常重要。這似乎不適用於你的情況。 。 簡而言之,根據上述假設,似乎沒有理由不讓連接在您的應用/用戶的登錄會話的整個持續時間內保持打開狀態。

如果您使用的交易不過,我建議你每次成功的原子活動後提交這些

+0

是,該應用程序是本地的單用戶數據庫,我將只保留一個連接打開整個運行 –

0

你知道你的兩個選項有+和 - 。對於你的特殊情況,我認爲每次創建數據庫連接並不是什麼壞主意,因爲創建與sqlite的連接速度非常快並且不耗時。同樣,您可以一次創建/關閉多個連接,這是一個很好的好處,也許你現在不這樣做,但將來也許你不得不這樣做。

相關問題