سؤال

لدي بعض الأعمدة المحسوبة من نوعين:

  1. أعمدة محسوبة تعتمد على الأعمدة في الجدول الحالي (أي السعر * الضريبة)
  2. أعمدة محسوبة تعتمد على الأعمدة الأخرى (أي السعر * fn_gettax (ترتيب الطلب))

هل ستقول أنه من الأفضل استخدام هذه الأعمدة في CLR على العميل فقط ثم حفظ من الخادم الحساب ونقل الأداء؟ هل تختلف في الأنواع المذكورة أعلاه (وأنواع أخرى)؟

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

المحلول

سأحاول إجراء جزء أعمدة محسوبة من جداول SQL - إذا كان الجهد اللازم للقيام بذلك ليس الفاحشة.

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

إذا كان لديك متطلبات أكثر تفصيلا، إذا كنت بحاجة إلى سلسلة واسعة أو ممارسة الرياضيات أو التلاعب بالتاريخ وما إلى ذلك، فمن المحتمل أن تكون أفضل حالا في وضع تلك الحسابات في لغة .NET. يمكنك إما تخزين ذلك كجهاز تجميع CLR في SQL Server وما زال يفعل الأعمدة الموجودة في SQL Server مباشرة (إذا كان إعادة استخدام فرق أو مشاريع أخرى من المحتمل)، أو يمكنك وضع تلك الموجودة في نموذج EF الخاص بك إذا كنت من المحتمل أن تكون الوحيد المهتم بتلك الأعمدة المحسوبة.

نأمل أن يلقي قليلا من الضوء على سؤالك!

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