2011-09-07 52 views
1

我正在構建/維護一些規劃工具,具有以下特徵:規劃工具的良好數據訪問方法?

-data從MsAccess/SQLServer加載(只讀)到C#framework 3.5中。數據從ERP系統加載到SQLServer/MsAccess中。

- 大量的維護數據被加載(比如來自各種表格的總共2000.000條記錄),所有這些數據都需要同時進行規劃。

目前,我正在使用使用tableadapter填充的類型化數據表。然後我遍歷每個表中的行,創建保存相同數據的自定義對象。我的代碼的其餘部分只適用於這些自定義對象。

這種方法有哪些替代方法,以及在可維護性和加載速度方面(從SQL Server/MSAccess到內存),這種方法的替代方案有哪些優缺點?

當前方法的主要缺點是我需要加載整個表,而在某些情況下,我將能夠動態地確定我需要檢索哪些記錄。但是目前的框架似乎並沒有爲此提供簡單的支持。

+0

你的SQLServer/MSACCESS的使用是好奇。您的工具是否設計爲半數據庫不可知的? – billinkc

+0

該工具不需要使用實時數據,可以在一夜之間填充SQLServer數據以減少對服務器的需求。 – willem

+0

您的方法目前遇到了哪些問題? – Ivo

回答

1

你的方法對我來說聽起來很合理。
它的主要優點是它的very simple
我看到改變它的唯一原因是如果你確實有性能問題。
在這種情況下,我會建議加載你的數據塊(例如,一次5000行,類似的東西)。
如果您爲應用程序和數據庫引擎使用不同的服務器,則可能會從處理當前批處理時在單獨的線程中加載下一批處理中受益。

但是,再次 - 如果它的工作方式很好 - 比它好。

p.s.像billinkc一樣,我對msAccess很好奇 - 它能夠很好地處理這些數據量嗎?

+1

200,000條記錄?這對於Access而言並不是什麼... –

1

爲求性能並避免重新發明輪子,我強烈考慮使用ETL庫 - 例如RhinoETL