سؤال

قام مطور طرف ثالث أحضره مديري بتصميم نظام "أفضل" من موقع ASP.NET + MSSQL Server 2005 الذي نستخدمه الآن.

فيما يلي المواصفات ذات الصلة:

  • Excel + ODBC كمخزن البيانات
  • تم تصميمه باستخدام ASP للمدرسة القديمة، وليس ASP.NET

هل هناك أي مشكلة صارخة في حله الذي لا يرقى إلى مستوى التكنولوجيا القديمة؟سلامة الخيط وما إلى ذلك؟

اسمحوا لي أن أطرح الأمر بهذه الطريقة، "ما الذي يمكن أن أقوله لمديري (الذي يعمل جزئيًا فقط في مجال التقنية) لتفجير هذا الرمز خارج الماء؟"

شكرًا لك،

المطور الانتقامي :)

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

المحلول

لا ينبغي أبدًا استخدام برنامج Excel كمخزن للبيانات،

  1. إنها ليست قاعدة بيانات

  2. لن يتعامل مع عدة مستخدمين في وقت واحد على الإطلاق

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

  4. Excel عبارة عن جدول بيانات مصمم لتحليل البيانات، وليس لتخزين البيانات.

نصائح أخرى

مباشرة من مايكروسوفت: http://support.microsoft.com/kb/195951

مهم:على الرغم من أن تطبيقات ASP/ADO تدعم الوصول متعدد المستخدمين، إلا أن جدول بيانات Excel لا يدعم ذلك.ولذلك، فإن طريقة الاستعلام عن المعلومات وتحديثها لا تدعم الوصول المتزامن لعدة مستخدمين.

امممم....يفتقر إلى قابلية التوسع:يمكن أن يكون لديك عدد قليل فقط من المستخدمين.هل البيانات مهمة؟

ألين، بالإضافة إلى الأسباب التقنية الرائعة التي ظهرت هنا، أعتقد أنك بحاجة إلى أن تسأل نفسك "لماذا فعل المدير هذا؟"

التصور هو الواقع، وإذا كان رئيسك تقنيًا جزئيًا فقط، فقد لا ينجح التفكير الفني البحت.

وبصرف النظر عن نقاط الضعف المعمارية الصارخة، هناك بعض وظائف في هذا الوحش الذي يجعله أكثر جاذبية لرئيسك في العمل؟بشكل عام، لا يقوم الأشخاص بفعل أشياء غبية عن قصد، قد يكون من المفيد لك أن تفكر في المكان الذي يأتي منه رئيسك قبل أن تبدأ في القيام بأي شيء CLM.

هل تواجه مشكلات المزامنة التي تتعامل مع مخزن بيانات XLS منفصل وخادم SQL 2005؟على خادم IIS الخاص بنا، يتم حظر صفحات asp الكلاسيكية افتراضيًا.ربما هذه علامة لول.

ماذا عن الأداء الرهيب، حيث أن برنامج Excel غير مصمم ليتم استخدامه كقاعدة بيانات؟أخبر مديرك أن برنامج Excel ليس قاعدة بيانات لمستخدم واحد (هذا هو MS Access)، ناهيك عن قاعدة بيانات متعددة المستخدمين مصممة لأداء عالٍ ومتزامن.

وبالطبع باستخدام ASP الخالص، فإنك تفقد إمكانية الوصول إلى جميع مكتبات .NET Framework (وهو بالطبع ما يركز عليه جميع مطوري المكتبات في نظام MS البيئي).لكنك سألت عن سبب واحد، والأول هو الأفضل.

سأتبع الشعار القائل بأن هذه هي الأدوات الخاطئة للوظيفة (على افتراض أنها في حالتك).سيكون الأمر مثل استخدام مفك لولبي كمطرقة.بالنسبة لمسمار واحد، قد يعمل مع الكثير من العرق والدموع.بالنسبة لمشروع حقيقي، من المحتمل أن يكون هذا محكومًا عليه بالفشل.

سأتفاخر بالأدوات التي تعرفها - ما مدى جودة الأدوات من حيث الأداء والأمان والصيانة (خاصة.تكلفة الصيانة).

يمكنك أن تقول شيئًا مثل أنه يدفع لشخص ما لكتابة تطبيق جديد باستخدام تقنية قديمة قد لا تكون مدعومة لفترة أطول (إذا كانت لا تزال كذلك...).

أممم... حد الصف؟

إليك ما يمكنك قوله له:ذكّره بالكوابيس التي تحدث عندما يحتاج شخصان أو أكثر إلى تعديل جدول البيانات نفسه في نفس الوقت.الآن أخبره أن يتخيل ذلك مضروبًا في مائة شخص لا يمكنهم الاتصال ببعضهم البعض ليطلب منهم "إغلاق جدول البيانات حتى أتمكن من تحديثه". هذا كيف سيكون الأمر.

هل سيتعامل جدول بيانات Excel مع المعاملات المتزامنة بشكل صحيح؟لم يتم تصميمه لهذا النوع من الأشياء، ولن أحمله المسؤولية إذا ارتكب شيئًا سيئًا (مثل السماح باتصال ODBC واحد فقط في كل مرة، أو عدم قفل التحديثات المتزامنة بشكل صحيح).

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

راجع للشغل- هل هذا الطرف الثالث أحد أقارب رئيسك في العمل؟؟؟موافق...

التكنولوجيا القديمة هي في حد ذاتها مشكلة صارخة.هل ستكون موجودًا إلى الأبد؟سيكون من الصعب جدًا على الرئيس العثور على مطورين جدد للحفاظ على شيء كهذا.لقد انتقل عالم التكنولوجيا إلى الأمام.

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