[英]Why is .NET Sql Server access faster than Excel Interop?
這可能是一個加載的問題,它可能會被拒絕,但它完全讓我感到沮喪。
在開發中使用SQL Server時,數據訪問速度快,效率高,但是當您使用COM與Excel通信時,速度很慢。
無論您使用何種數據訪問技術,ADO,ADO.NET,LINQ,實體框架,Astoria(ADO.NET數據服務),它們都比自動化Excel更快。
如果您只需要工作簿中單元格“A1”中的數據,則需要Excel.Application,Excel.Workbook,Excel.Worksheet和Excel.Range對象,以獲取一個數據點。
WTF,為什么與SQL Server交談比與Excel交談更有效? Excel是本地的,Sql Server可能不是。
TIA克里斯
因為設計為交互式應用程序的大型單片可執行文件比通過快速網絡與專為此目的而設計的應用程序交談要慢。
每次你需要與excel交談時,服務器必須實際啟動excel程序。 它位於一個隱藏的桌面上,但它仍在啟動整個程序。 如果您有幾個人使用該網站,那也是幾個Excel實例。 如果他們共享相同的工作簿,那就更糟了。
一方面,Sql Server 已經在運行 。 只需連接即可。 它是為這種東西而建的。 Excel不是。
這是因為SQL服務器是為服務器數據而設計的,而Excel則不是。 在您從SQL服務器中檢索1000甚至數百萬行之前,網絡延遲甚至不會發揮作用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.