2009-10-22 45 views
3

這可能是一個加載的問題,它可能被拒絕,但它完全讓我感到挫敗。爲什麼.NET Sql Server的訪問速度比Excel Interop快?

當您在開發中使用SQL Server時,數據訪問速度快且效率高,但是當您使用COM與Excel交談時,它會很慢。

無論您使用哪種數據訪問技術,ADO,ADO.NET,LINQ,Entity Framework,Astoria(ADO.NET Data Services),它們都比自動化Excel更快。

如果您只想從工作簿獲取單元格「A1」中的數據,則需要一個Excel.Application,Excel.Workbook,Excel.Worksheet和Excel.Range對象,以獲取一個數據點。

WTF,爲什麼與SQ​​L Server交談比與Excel交談更有效? Excel是本地的,Sql Server可能不是。

TIA 克里斯

+2

檢查很多項目CodePlex上,讓你直接打開和查詢Excel文件,無需任何交互式BS。 – Will 2009-10-22 20:22:55

回答

16

由於旋轉起來是被設計爲一個交互式應用比快速網絡聊天到這是專爲目的的應用慢一個大整體的可執行文件。

0

這是因爲SQL服務器被設計爲服務器數據,Excel不是。網絡延遲甚至不會在這裏發揮作用,直到你從SQL服務器撤回1000甚至數百萬行。

6

每次你需要與excel交談時,服務器必須實際啓動excel程序。它位於隱藏的桌面,但仍然啓動整個程序。如果你有幾個人在使用這個網站,那也是一些Excel的例子。如果他們共享相同的工作簿,那就更糟了。

Sql Server,目前已經運行。只需連接並走開。它是爲這種事情而建造的。 Excel不是。

+8

朋友不要讓朋友使用Excel作爲數據庫。 – HLGEM 2009-10-22 20:16:45

相關問題