لماذا هو وصول خادم SQL. NET أسرع من Excel إمكانية التشغيل المتداخل؟

StackOverflow https://stackoverflow.com/questions/1609635

سؤال

وهذا قد يكون مسألة تحميل، وأنه قد تحصل على صوت أسفل، ولكنه يحبط لي تماما.

عند استخدام SQL Server في تطوير الخاص بك الوصول إلى البيانات بسرعة وكفاءة، ولكن عند استخدام COM لاجراء محادثات مع إكسل هو الخنزير بطيئة.

لا يهم ما تقنية الوصول إلى البيانات التي تستخدمها، ADO، ADO.NET، LINQ، الكيان الإطار، أستوريا (ADO.NET خدمات البيانات)، لأنها جميعا أسرع من أتمتة Excel.

وإذا كان كل ما نريده هو البيانات في الخلية "A1" من مصنف، تحتاج إلى Excel.Application، Excel.Workbook، والأشياء Excel.Worksheet، وExcel.Range، لمجرد الحصول على نقطة بيانات واحدة.

وWTF، لماذا يتحدث إلى SQL Server أكثر كفاءة من التحدث إلى Excel؟ التفوق هو محلي و SQL Server قد لا يكون.

وTIA كريس

هل كانت مفيدة؟

المحلول

ولأن الغزل تصل للتنفيذ متجانسة كبيرة التي تم تصميمها كتطبيق التفاعلية أبطأ من التحدث عبر شبكة سريعة لأحد التطبيقات التي تم تصميمها لهذا الغرض.

نصائح أخرى

وفي كل مرة كنت بحاجة الى التحدث الى التفوق، والخادم لابد أن يبدأ فعليا حتى برنامج اكسل. أنه كان سطح المكتب مخفي، لكنه ما زال بدء البرنامج بأكمله. إذا كان لديك العديد من الأشخاص الذين يستخدمون الموقع، وهذا أيضا عدة حالات من Excel. وإذا كانت تشاركها نفس المصنف انها أسوأ من ذلك.

ومزود الخدمة، من ناحية، و<م> تشغيل بالفعل . وصل للتو وتذهب. أنها بنيت لهذا النوع من الشيء. كان Excel لا.

وإكسل لا تزال إمكانية التشغيل المتداخل كوم، حتى عام 2007. ولكن هناك العديد من المساعدين

التفوق الأداء -new-المستند التقني-متاح

spreadsheetgear

excelpackage.codeplex

وهذا هو لأنه تم تصميم الخادم SQL إلى بيانات الخادم، إكسل ليست كذلك. وكمون الشبكة لا يأتي حتى في اللعب هنا حتى يتم استرداد 1000 ربما الملايين من صفوف من خادم SQL

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top